home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1994 / MacHack 1994.toast / MacHack™94 / Talks & Papers / Timothy Knox / Prolog FAQ ⁄ Resource Guide next >
Text File  |  1994-06-24  |  113KB  |  2,270 lines

  1. Posted-By: auto-faq script
  2. Archive-name: prolog/faq
  3.  
  4. Original-by: jamie@cs.sfu.ca (Jamie Andrews)
  5. Version: 1.12
  6. Last-modified: 7/15/93 by jamie@cs.sfu.ca (Jamie Andrews)
  7.  
  8.      This article contains the answers to some Frequently Asked
  9. Questions (FAQ) often seen in comp.lang.prolog.  It is posted
  10. (twice a month, currently on the 1st and 16th) to help reduce
  11. volume in this newsgroup and to provide hard-to-find information
  12. of general interest.
  13.  
  14.      This article includes answers to the following questions.
  15.  
  16. 0. General information
  17. 1. What is the Association for Logic Programming?
  18. 2. Where can I get a public-domain, free Prolog for (the IBM PC,
  19.    the Mac, Unix)?
  20. 3. What commercial systems are available?  What about systems
  21.    available for a price from research institutions?
  22. 4. How do I get in touch with my Prolog's users' group,
  23.    sales representative, or technical support line?
  24. 5. I think language X is better than Prolog.  What do you think?
  25. 6. My Prolog prof assigned me this problem.  Can you help
  26.    me with it?
  27. 7. Can you suggest some books on Prolog?
  28. 8. Are there any FTP archive sites for comp.lang.prolog?
  29. 9. How can I get a copy of the draft ISO Prolog standard?
  30.    Where can I go for more information about it?
  31. 10. How does the WAM (Warren Abstract Machine) work?  How do I
  32.    write a WAM-based compiler or a WAM emulator?
  33.  
  34.      Please forward suggestions for further questions and
  35. answers to the current FAQ maintainer, jamie@cs.sfu.ca (Jamie
  36. Andrews).
  37.  
  38. Changes in this version:
  39. * Updated information for BinProlog.
  40. * Updated information for Open Prolog.
  41. * Updated information for ai.uga.edu site systems.
  42. * Added information for Aquarius Prolog.
  43. * Added information for XSB.
  44. * Added information for TPM (the Transparent Prolog Machine).
  45. * Added contact information for Expert Systems Ltd. / Prolog-2.
  46. * Added information for Covington's summary of the Prolog standard.
  47. * Added question 10.
  48.  
  49.             *    *    *
  50.  
  51. 0. General information
  52.  
  53.      The newsgroup "comp.lang.prolog" discusses the language
  54. Prolog and other "logic programming" languages.  Logic
  55. programming languages, in general, are programming languages
  56. which incorporate some of the language of mathematical logic;
  57. unification and backtracking search are common operational
  58. features.  For more background information about Prolog, see the
  59. list of books in Question 7 of this list.
  60.  
  61.             *    *    *
  62.  
  63. 1. What is the Association for Logic Programming?
  64.  
  65.      To keep up with the current state of logic programming
  66. technology, readers can join the Association for Logic
  67. Programming (ALP) and receive their Newsletter.  For details on
  68. how to join, contact:
  69.  
  70.         Cheryl Anderson,
  71.         ALP Administrative Secretary,
  72.         Dept. of Computing,
  73.         Imperial College,
  74.         180 Queen's Gate,
  75.         London, SW7 2BZ, UK
  76.  
  77. Email:   csa@doc.ic.ac.uk
  78. Fax:    +44 71 589 1552
  79. Phone:  +44 71 589 5111 x5011
  80.  
  81.      The Prolog Resource Guide (v0.6) was printed in issue 5/1
  82. of the Newsletter (Feb. 1992). This lists information concerning
  83. Prolog Archives, Books, Suppliers, etc.  It is now maintained by
  84. Mark Kantrowitz (Mark.Kantrowitz@GLINDA.OZ.CS.CMU.EDU), and
  85. posted periodically to comp.lang.prolog (see question 3).
  86.  
  87.      To send in Newsletter contributions, write to:
  88.  
  89.         Andrew Davison,
  90.         Dept. of Computer Science,
  91.         University of Melbourne,
  92.         Parkville,
  93.         Melbourne, Victoria 3052,
  94.         AUSTRALIA
  95.  
  96. Email:   ad@cs.mu.oz.au
  97. Fax:    +61 3 348 1184
  98. Phone:  +61 3 344 7207 / 5230
  99. Telex:   AA 35185
  100.  
  101.             *    *    *
  102.  
  103. 2. Where can I get a public-domain, free Prolog for (the IBM PC,
  104.    the Mac, Unix)?
  105.  
  106.      The following are anonymous-FTP sites for free Prologs
  107. which are either in the public domain or are "copy-lefted"
  108. (permitted to be copied with some restrictions on commercial use).
  109.  
  110.      [Please see Mark Kantrowitz's monthly "Prolog Resource
  111. Guide" posting (see question 3) for information about non-free
  112. implementations.]
  113.  
  114.      (Please note that for extensive development work, users
  115. will probably want a robust interpreter or compiler with good
  116. debugging facilities and a standard syntax, among other things.
  117. While public-domain systems are a valuable service to the
  118. community, they do not necessarily have all these things, and
  119. users should weigh carefully what they want to do against the
  120. capabilities and costs of the available systems.)
  121.  
  122. For the IBM PC:
  123. - BinProlog 1.71, anonymous FTP from clement.info.umoncton.ca
  124.   (139.103.16.2), directory BinProlog.  Compiler for 386/486 machines.
  125.   E-mail: tarau@info.umoncton.ca (Paul Tarau).
  126. - Anonymous FTP from aisun1.ai.uga.edu, directory ai.prolog;
  127.   download "Contents" first.  ADA Prolog and ESL Prolog.
  128.   E-mail: mcovingt@uga.cc.uga.edu (Michael Covington).
  129. - SWI Prolog, anonymous FTP from swi.psy.uva.nl (192.42.96.1),
  130.   directory pub/SWI-Prolog; or from ftp.th-darmstadt.de
  131.   (130.83.55.75), directory pub/programming/languages/prolog.
  132.   Portable, copy-lefted.
  133.  
  134. For the Apple Macintosh:
  135. - Anonymous FTP from aisun1.ai.uga.edu, directory ai.prolog;
  136.   download "Contents" first.  Demo version of LPA MacProlog.
  137.   E-mail: mcovingt@uga.cc.uga.edu (Michael Covington).
  138. - Open Prolog 1.0d40, anonymous FTP from grattan.cs.tcd.ie
  139.   (134.226.32.15), directory pub/languages/open-prolog.  In
  140.   SEA/binhex form.
  141.   E-mail: brady@cs.tcd.ie (Michael Brady).
  142. - UPMAIL Tricia Prolog, anonymous FTP from ftp.csd.uu.se
  143.   (130.238.12.1), directory pub/Tricia; get README first.
  144.   Email: tricia-request@csd.uu.se.
  145. - TPM (the Transparent Prolog Machine), anonymous FTP from
  146.   hcrl.open.ac.uk, directory /pub/software.  Demo LPA
  147.   MacProlog with the TPM debugger built on top.
  148.  
  149. For Unix systems:
  150. - BinProlog 1.39, anonymous FTP from clement.info.umoncton.ca
  151.   (139.103.16.2), directory BinProlog.  Compiler for SPARC
  152.   (SunOS 4.x + Solaris), SUN3, NEXT.
  153.   E-mail: tarau@info.umoncton.ca (Paul Tarau).
  154. - SWI Prolog, anonymous FTP from swi.psy.uva.nl (192.42.96.1),
  155.   directory pub/SWI-Prolog; or from ftp.th-darmstadt.de
  156.   (130.83.55.75), directory pub/programming/languages/prolog.
  157.   Portable, copy-lefted.
  158. - SB-Prolog, anonymous FTP from cs.arizona.edu, directory
  159.   "sbprolog/v3".  Version 3.  Copy-lefted.
  160. - Modular SB-Prolog (= SB-Prolog version 3.1 plus modules),
  161.   anonymous FTP from ftp.dcs.ed.ac.uk (129.215.160.5), file
  162.   pub/dts/mod-prolog.tar.Z .  Interpreter for SPARC.
  163.   E-mail: mprolog@dcs.ed.ac.uk (Brian Paxton).
  164. - ALF (Algebraic Logic Functional language), WAM-based language
  165.   with narrowing/rewriting, anonymous FTP from ftp.germany.eu.net,
  166.   directory "pub/programming/languages/LogicFunctional".
  167.   E-mail: opalla@julien.informatik.uni-dortmund.de (Rudolf Opalla).
  168. - CLP(R), available by e-mail request from Joxan Jaffar,
  169.   "joxan@watson.ibm.com".  Constraint logic programming language,
  170.   for academic and research purposes only.
  171. - Aquarius Prolog 1.0, send message with body "get aquarius-info
  172.   license" to listserv@acal-server.usc.edu.  High performance,
  173.   commercial functionality except debugging and modules.  For
  174.   SPARC, DECstation, MIPS, HP 9000 series, Sun 3.  Copy-lefted.
  175. - XSB, system with OLDT-resolution and HiLog capability.  Compiler
  176.   for Linux, Sun, Sparc, and NeXT.  Anonymous FTP from
  177.   cs.sunysb.edu (130.245.1.15), directory pub/XSB.
  178.   E-mail: xsb-contact@cs.sunysb.edu
  179.  
  180.             *    *    *
  181.  
  182. 3. What commercial systems are available?  What about systems
  183.    available for a price from research institutions?
  184.  
  185.      Many commercial systems are listed in the periodically
  186. posted Prolog Resource Guide.  The Resource Guide also lists
  187. many systems which are not exactly "commercial", but available
  188. for a price from research instutitions.  The list of such
  189. systems was originally compiled by Chris Moss, of Imperial
  190. College.  The rest of the Resource Guide was originally compiled
  191. by Dag Wahlberg, of Uppsala University.
  192.  
  193.      The Resource Guide is now maintained by the kind efforts
  194. of Mark Kantrowitz, "Mark.Kantrowitz@GLINDA.OZ.CS.CMU.EDU", who
  195. posts it ON THE 14TH OF EVERY MONTH on comp.lang.prolog.  It is
  196. also available by anonymous FTP from "ftp.cs.cmu.edu" [128.2.206.173]
  197. in the directory "/afs/cs.cmu.edu/user/mkant/Public/AI/", as the
  198. file "prolog-resource-guide.text".
  199.  
  200.      Readers should also note that the newly formed Prolog
  201. Vendors' Group is contactable electronically via the Secretary,
  202. Al Roth.  His email is "alroth@cix.compulink.co.uk".
  203.  
  204.             *    *    *
  205.  
  206. 4. How do I get in touch with my Prolog's users' group,
  207.    sales representative, or technical support line?
  208.  
  209.      Here are some e-mail addresses of these contacts, listed
  210. alphabetically by company or major product name.  Please note
  211. that sometimes phoning or writing to the company will get better
  212. response than e-mail.
  213.  
  214. ALS (Applied Logic Systems): 
  215.   Information:    info@als.com
  216.   Sales:    sales@als.com
  217.   Tech support:    support@als.com
  218.  
  219. Amziod (Cogent Prolog):
  220.   All:        amziod@world.std.com
  221.  
  222. Expert Systems Ltd. (Prolog-2):
  223.   Sales:    sales@expert.demon.co.uk
  224.   Support:    support@expert.demon.co.uk
  225.   Users' group:    prolog2-request@hplb.hpl.hp.com
  226.  
  227. LPA:
  228.   Sales:    lpa@cix.compulink.co.uk
  229.   Tech support:    lpa@cix.compulink.co.uk
  230.  
  231. PDC Prolog:
  232.   Information:    pdc-request@pdc.dk
  233.   Sales:    sales@pdc.dk
  234.   Tech support:    support@pdc.dk
  235.  
  236. ProLog by BIM:
  237.   Contact:    prolog@sunbim.be (Kathleen Pierco)
  238.  
  239. Quintus:
  240.   Users' group:    quintus-users-request@quintus.com
  241.   Sales:    sales@quintus.com
  242.   Tech support:    teksup@quintus.com
  243.  
  244. Sepia:
  245.   User's group:    sepia_users@ecrc.de
  246.   Information:    sepia_request@ecrc.de
  247.   Tech support:    sepia_bugs@ecrc.de
  248.  
  249. SICStus:
  250.   Users' group:    sicstus-users-request@sics.se
  251.   Sales:    sicstus-request@sics.se
  252.   Tech support:    sicstus-bug@sics.se
  253.  
  254. Turbo Prolog:
  255.   Turbo Prolog is the older name for PDC Prolog (see above).
  256.  
  257.             *    *    *
  258.  
  259. 5. I think language X is better than Prolog.  What do you think?
  260.  
  261.      These debates rarely result in any productive discussion.
  262. To some extent, one's favourite language is based on irrational
  263. ideology.
  264.  
  265.      However, many people now agree that different languages are
  266. good for different things.  Prolog seems to be good for problems
  267. in which logic is intimately involved, or whose solutions have a
  268. succinct logical characterization.  Like other interactive,
  269. symbolic languages, Prolog is also good for rapid prototyping.
  270.  
  271.      Also, please note that there are many different "Prologs"
  272. and other logic programming languages available, all with
  273. different capabilities.
  274.  
  275.             *    *    *
  276.  
  277. 6. My Prolog prof assigned me this problem.  Can you help
  278.    me with it?
  279.  
  280.      If your instructor assigned it to you, he or she probably
  281. wanted you to do it yourself.  If it's an introductory Prolog
  282. course, your question might be elementary to most readers, so it
  283. might be a waste of network resources to ask it.  Please ask
  284. your instructor, a friend, a teaching assistant, or a local
  285. newsgroup for help first.
  286.  
  287.      That being said, there are comp.lang.prolog readers who
  288. would be glad to help people making a legitimate attempt to
  289. learn Prolog.
  290.  
  291.             *    *    *
  292.  
  293. 7. Can you suggest some books on Prolog?
  294.  
  295.      The Prolog Resource Guide (see above, question 3) contains
  296. a listing of Prolog books.  It is maintained by Mark Kantrowitz
  297. (Mark.Kantrowitz@GLINDA.OZ.CS.CMU.EDU), and posted periodically
  298. on comp.lang.prolog.
  299.  
  300.      Here are some of the most popular books on Prolog.
  301.  
  302. _Programming in Prolog_.  William F. Clocksin and Christopher S.
  303. Mellish.  Springer-Verlag, 1987.  (Introductory.)
  304.  
  305. _The Art of Prolog:  Advanced Programming Techniques_.  Leon
  306. Sterling and Ehud Shapiro.  MIT Press, 1986.  (Advanced.)
  307.  
  308. _The Craft of Prolog_.  Richard A. O'Keefe.  MIT Press, 1990.
  309. (Advanced.)
  310.  
  311. _Foundations of Logic Programming_.  John Lloyd. 
  312. Springer-Verlag, 1988 (2nd ed).  (Logic programming theory.)
  313.  
  314.             *    *    *
  315.  
  316. 8. Are there any FTP archive sites for comp.lang.prolog?
  317.  
  318.      Yes.  As of the latest check, the following archive sites
  319. contain selected recent articles from comp.lang.prolog in the
  320. indicated directories.
  321.  
  322. "cs.dal.ca": /pub/comp.archives/comp.lang.prolog
  323. "rtfm.mit.edu": /pub/usenet/comp.lang.prolog
  324. "src.doc.ic.ac.uk": /usenet/comp.archives/auto/comp.lang.prolog
  325. "cnam.cnam.fr": /pub/Archives/comp.archives/auto/comp.lang.prolog
  326.  
  327.      Some other sites contain copies of this FAQ list and the
  328. Prolog Resource Guide (see question 3).  For users with "archie"
  329. access, type "archie comp.lang.prolog" for an up-to-date list of
  330. sites having either archives or the periodic postings.
  331.  
  332.             *    *    *
  333.  
  334. 9. How can I get a copy of the draft ISO Prolog standard?
  335.    Where can I go for more information about it?
  336.  
  337.      You can pick up a copy by anonymous FTP from site
  338. "ai.uga.edu", directory "ai.prolog.standard".  The directory
  339. also contains a summary of the standard, by Michael Covington,
  340. in the "isoprolog" files.  Note that no one at that site can
  341. answer any questions about the standard; it is just an FTP site
  342. for the standard in the USA.
  343.  
  344.      For more information about the ISO Prolog standard, contact
  345.  
  346. Roger Scowen 
  347. ISO/IEC JTC1 SC22 WG17 (Prolog) convener, 
  348. DITC/93,  National Physical Laboratory
  349. TEDDINGTON, Middlesex TW11 0LW
  350. UNITED KINGDOM
  351. Tel: +44 81 943 6956
  352. Fax: +44 81 977 7091
  353. E-mail: rss@seg.npl.co.uk
  354.  
  355.             *    *    *
  356.  
  357. 10. How does the WAM (Warren Abstract Machine) work?  How do I
  358.    write a WAM-based compiler or a WAM emulator?
  359.  
  360.      Reportedly the best tutorial is Hassan Ait-Kaci's book
  361. _Warren's Abstract Machine: A Tutorial Reconstruction_ (MIT
  362. Press, 1991).  A public-domain WAM emulator, written in C++ by
  363. Herve Touati, is available by anonymous FTP at site
  364. "gatekeeper.dec.com", in directory "pub/plan/prolog/ucb".
  365.  
  366.             *    *    *
  367.  
  368. Acknowledgements
  369.  
  370.      For help in putting together this FAQ, thanks to Andrew
  371. Davison, Mike Brady, Michael Covington, Stephen Bevan, John
  372. Dowding, Thilo Kielmann, Paul Singleton, Dave Moffatt, Dani de
  373. Ridder, Per Bilse, Chris Moss, Kathleen Pierco, Paul Tarau,
  374. Jonathan Kamens, Jan Wielemaker, Dag Wahlberg, Micha Meier, Don
  375. Sannella, Clive Spenser, Yuan Liu, Jonas Barklund, and Ian
  376. Dickinson.  Special thanks to John Dowding for suggesting a good
  377. format for the list, and to Chris Moss, Dag Wahlberg, and Mark
  378. Kantrowitz for their work on the Prolog Resource Guide.
  379.  
  380. --Jamie Andrews.
  381.   jamie@cs.sfu.ca
  382. ---------------------------------------------------------------------------
  383.  
  384.  
  385.  
  386. Archive-name: prolog/resource-guide/part1
  387. Last-Modified: Wed Oct  6 00:03:00 1993 by Mark Kantrowitz
  388. Version: 1.12
  389.  
  390. ;;; ****************************************************************
  391. ;;; Prolog Resource Guide ******************************************
  392. ;;; ****************************************************************
  393. ;;; prg_1.faq -- 41997 bytes
  394.  
  395. Contributions and corrections should be sent to Mark Kantrowitz
  396. at mkant+prolog-guide@cs.cmu.edu. 
  397.  
  398. This guide lists a variety of resources for the Prolog community,
  399. including books, magazines, ftp archives, and products. It is posted
  400. once a month to the newsgroups comp.lang.prolog and comp.object.logic.
  401.  
  402. The original version of this guide (Version 0.6, Dec 11, 1991) was
  403. compiled by Dag Wahlberg, Uppsala University, Sweden <dagwag@csd.uu.se>.
  404. Other people who helped with the compilation include Chris Moss
  405. <cdsm@doc.ic.ac.uk>, Mats Carlsson, SICS <matsc@sics.se>,
  406. Michael A. Covington <mcovingt@ai.uga.edu>, Jocelyn Paine
  407. <popx@vax.ox.ac.uk>, Per G. Bilse, PDC <pdev@pdc.dk>, David Cohen, BIM
  408. Systems Inc <dc@bim.com>, Mark Korsloot <mark@logic.et.tudelft.nl>, and
  409. David W. Talmage <talmage@luvthang.aquin.ori-cal.com>. 
  410.  
  411. Thanks also to Jamie Andrews <jamie@cs.sfu.ca>.
  412.  
  413. Suggestions and comments to:    mkant+prolog-guide@cs.cmu.edu
  414.  
  415. ----------------------------------------------------------------
  416. Table of Contents (Part 1):
  417.  
  418.   [1-0] Introduction
  419.   [1-1] Sources of information about Prolog
  420.   [1-2] FTP Archives and Other Resources
  421.   [1-3] Prolog-related Mailing Lists
  422.   [1-4] Books and Magazine Articles
  423.   [1-5] The Prolog 1000 Database
  424.   [1-6] X-Windows Interfaces
  425.   [1-7] Is there a straight-forward way of compiling Prolog to C?
  426.   [1-8] What is the Basic Andorra Model and AKL?
  427.  
  428. Prolog Implementations (Part 2):
  429.   [2-1] Public Domain or Free Prolog Implementations
  430.   [2-2] Commercial Prolog Implementations
  431.  
  432. Search for [#] to get to topic number # quickly. In newsreaders which
  433. support digests (such as rn), [CTRL]-G will page through the answers.
  434.  
  435.  
  436. Recent Changes:
  437. ;;; 1.9:
  438. ;;; 20-JUL-93 mk    Updated IC-Prolog II entry and the PARLOG entry.
  439. ;;; 10-AUG-93 mk    Inserted [1-7] about compiling Prolog to C.
  440. ;;;
  441. ;;; 1.10:
  442. ;;; 24-AUG-93 mk    Corrected subscription info to EJFLP.
  443. ;;; 25-AUG-93 mk    Added entry on theorem-provers mailing list to [1-3].
  444. ;;;
  445. ;;; 1.11:
  446. ;;; 13-SEP-93 mk    Added entry on SLG to part 2.
  447. ;;;
  448. ;;; 1.12:
  449. ;;;  6-OCT-93 mk    Added entry on JB Prolog 2.1
  450. ;;; 12-OCT-93 mk    Added mention of Goedel mailing list to Goedel entry.
  451.  
  452. ----------------------------------------------------------------
  453. Subject: [1-0] Introduction
  454.  
  455. This guide lists Prolog resources: archives, newsgroups, books,
  456. magazines, compilers, interpreters and anything else you can think of
  457. which has to do with the proliferation of Prolog. Also included is a
  458. list of suppliers of products and a list of publishers. As Prolog has
  459. a strong historical tradition in Europe, we've tried to ensure that
  460. the information is relevant to all readers, both European and North American.
  461.  
  462. This guide is posted regularly to comp.lang.prolog and comp.object.logic. 
  463. It may also be obtained by anonymous ftp from CMU:
  464.  
  465.    To obtain the file from CMU, connect by anonymous ftp to any CMU CS
  466.    machine (e.g., ftp.cs.cmu.edu [128.2.206.173]), using username
  467.    "anonymous" and password "name@host". The files prg_1.faq and prg_2.faq
  468.    are located in the directory
  469.        /afs/cs.cmu.edu/project/ai-repository/ai/pubs/faqs/prolog/
  470.    [Note: You must cd to this directory in one atomic operation, as
  471.    some of the superior directories on the path are protected from
  472.    access by anonymous ftp.] If your site runs the Andrew File System,
  473.    you can just cp the file directly without bothering with FTP.
  474.  
  475. The FAQ postings are also archived in the periodic posting archive on
  476. rtfm.mit.edu [18.70.0.224]. Look in the anonymous ftp directory
  477. /pub/usenet/news.answers/ in the subdirectory prolog/. If you do not
  478. have anonymous ftp access, you can access the archive by mail server
  479. as well.  Send an E-mail message to mail-server@rtfm.mit.edu
  480. with "help" and "index" in the body on separate lines for more
  481. information.
  482.  
  483. Disclaimer:
  484.  
  485.    We have taken great care in making the information in this document as
  486.    accurate as possible. However we are not responsible for any problems
  487.    which might occur from using information supplied in this guide.
  488.  
  489. ----------------------------------------------------------------
  490. Subject:  [1-1]  Sources of Information about Prolog
  491.  
  492. The newsgroups comp.lang.prolog, comp.object.logic, and (to a lesser
  493. extent) comp.ai are a source of information and discussion about Prolog. 
  494.  
  495. A "Frequently Asked Questions" posting is posted to comp.lang.prolog
  496. twice a month by Jamie Andrews <jamie@cs.sfu.ca>. The Prolog FAQ and this
  497. Prolog Resource Guide are intended to complement one another.
  498.  
  499. The draft ISO standard for Prolog is available by anonymous ftp from
  500. ai.uga.edu:/ai.prolog.standard [128.192.12.9]. An unofficial summary
  501. of the draft ISO Prolog standard is available from
  502. ai.uga.edu:/ai.prolog.standard/ as isoprolog.tex or isoprolog.ps.Z.
  503. Send mail to Michael Covington <mcovingt@ai.uga.edu> for more information.
  504.  
  505. ----------------------------------------------------------------
  506. Subject: [1-2]  FTP Archives and Other Resources
  507.  
  508. The following are achives that contain Prolog-related material, such as
  509. code, interpreters, articles, etc. Most of the archives are ftp sites.
  510. They are listed by domain.name and [IP Address]. To access them and
  511. download programs type at the prompt: 
  512.  
  513.     ftp <site name> (or IP address)
  514.     login: "anonymous",
  515.     password: your own return email address,
  516.     cd <directory>, ls to see files, 
  517.     set binary, 
  518.     get <filename> to transfer file to your system
  519.     stop with quit or exit
  520.  
  521. Deviations from this general scheme may occur but the above should
  522. work in most cases.
  523.  
  524.  
  525. Artificial Intelligence Programs:
  526.    ai.uga.edu [128.192.12.9]
  527.  
  528.    Contains public domain Prologs, such as Open Prolog and ESL PD Prolog,
  529.    all programs from the book by Covington, Nute, and Vellino, (see
  530.    the section on Books below), PrEd (a small text editor for Prolog)
  531.    and some technical reports with accompanying code. Maintained by
  532.    Michael Covington, the University of Georgia, mcovingt@ai.uga.edu. 
  533.  
  534. ALE:     
  535.    ALE (Attribute Logic Engine), a public domain system written in
  536.    Prolog, integrates phrase structure parsing and constraint logic
  537.    programming with typed feature structures as terms.  Types are
  538.    arranged in an inheritance hierarchy and specified for the features
  539.    and value types for which they are appropriate.  Grammars may also
  540.    interleave unification steps with logic program goal calls (as can be
  541.    done in DCGs), thus allowing parsing to be interleaved with other
  542.    system components.  While ALE was developed to handle HPSG grammars,
  543.    it can also execute PATR-II grammars, DCG grammars, Prolog, Prolog-II,
  544.    and LOGIN programs, etc. Grammars and programs are specified with a
  545.    version of Rounds-Kasper Attribute Value Logic with macros and
  546.    variables.  ALE supports lexical rules and empty categories for
  547.    grammars, using a bottom-up, breadth-first dynamic chart parser.    ALE
  548.    supports last call optimization, negation by failure and cuts in
  549.    definite clauses, which may be used independently or integrated into
  550.    grammars.     The system is available free for research purposes, from
  551.    Bob Carpenter <carp@lcl.cmu.edu>.
  552.  
  553. ALP-UK Library:
  554.    The best Prolog library currently is the one collected by the ALP-UK
  555.    group. It is available to members at 30 pounds sterling for a Sun
  556.    cartridge or 2 pounds/IBM DOS disk. (non-members maybe, how much?) It
  557.    contains MBs of Prolog systems (including SB Prolog), libraries
  558.    (including the Edinburgh library), benchmarks, grammars, theorem provers,
  559.    object and graphics systems etc. For more information, write to ALP-UK
  560.    Library, Sanjay Raina, Librarian, Dept. of Computer Science, University
  561.    of Bristol, University Walk, Bristol BS8 1TR, UK, call +44 0272 303030
  562.    x3304, or send email to raina@compsci.bristol.ac.uk.
  563.  
  564. CASLOG
  565.    CASLOG (Complexity Analysis System for LOGic) is an experimental
  566.    semi-automatic complexity analysis system for logic programs. It can
  567.    perform the worst-case analysis for complexity measures: argument size
  568.    complexity, number of solutions complexity, and time complexity.
  569.  
  570.    CASLOG extends the techniques developed for analyzing imperative and
  571.    functional languages to deal with nondeterminism and generation of
  572.    multiple solutions via backtracking in logic languages. The analyses
  573.    for different complexity measures are implemented in a unified
  574.    framework and share several common features. First, the predicates in
  575.    a program are processed in an order generated by a bottom-up
  576.    topological sorting over the call graph of the program. Second, the
  577.    complexity function for a predicate is derived from the complexity
  578.    function of its clauses by using the information about the mutual
  579.    exclusion relationships between its clauses. Third, the complexity
  580.    function for a clause is inferred based on the data dependency
  581.    relationships between its literals. Fourth, the complexity functions
  582.    for recursive clauses are in the form of difference equations and are
  583.    transformed into closed form functions using difference equation
  584.    solving techniques. This unified framework can simplify proofs of
  585.    correctness and the implementation of the algorithms.
  586.  
  587.    CASLOG is available by anonymous ftp from cs.arizona.edu:caslog/. This
  588.    is an alpha distribution, and includes CASLOG version 1.0, a
  589.    preliminary user manual, a paper on CASLOG, and a set of examples.
  590.    For more information, contact Nai-Wei Lin <naiwei@cs.arizona.edu>.
  591.  
  592. Constraint Programming Paper Archive:
  593.    Aarhus University, Denmark, has established an anonymous ftp archive
  594.    for papers on "Constraint Programming" at ftp.daimi.aau.dk:pub/CLP/.
  595.    For further information, contact Brian H. Mayoh <brian@daimi.aau.dk>.
  596.  
  597. Eden
  598.    Eden is a Poplog-based AI microworld developed by Simon Perkins,
  599.    Jocelyn Paine and Edmund Chattoe of the Oxford University Artificial
  600.    Intelligence Society. It is intended to serve as a testbed for
  601.    learning and planning programs. Programs written in Pop-11, Prolog,
  602.    Lisp, and ML control a "bug" that lives in a 2-dimensional world. Any
  603.    kind of algorithm may be used to control the bug, including genetic
  604.    algorithms, neural nets, and rule-based systems. Eden consists of a
  605.    grid of cells, each of which can contain objects such as keys, doors,
  606.    boulders and quicksand. Bug's objective is to find and eat a piece of
  607.    food which the simulator has placed somewhere within this grid. To do
  608.    this, Bug must negotiate its way towards the food while dealing
  609.    intelligently with obstacles. Eden's laws of physics allow Bug to take
  610.    one of several different actions when it encounters an object. The
  611.    simulator then works out the consequences of the chosen action on Bug
  612.    and on Eden, and displays these graphically in a Ved window. Bug's
  613.    perceptions are updated to reflect the new state of the world, and the
  614.    cycle repeats. Eden is available by anonymous ftp from the Imperial
  615.    College archive, src.doc.ic.ac.uk [146.169.2.1] in the directory
  616.    computing/programming/languages/prolog/pd-software (a shortcut is
  617.    packages/prolog-pd-software) as the file eden.tar.Z. Eden includes
  618.    PopBeast, a simple Prolog bug which can read and parse simple
  619.    commands, extract their meaning, plan how to satisfy these commands,
  620.    and then carry out the plans.
  621.  
  622.    The Oxford University AI Society is running an international AI
  623.    competition for Eden bugs. Send your source code to Jocelyn Paine
  624.    <popx@vax.oxford.ac.uk> or Edmund Chattoe <econec@vax.oxford.ac.uk> by
  625.    May 1, 1993, if you'd like to enter.
  626.  
  627. Logic Programming Bibliographies:
  628.    duck.dfki.uni-sb.de [134.96.188.92]
  629.  
  630.    The BiBTeX bibliographies are available in /pub/lp-proceedings.
  631.    BibTeX entries for the proceedings of the following conferences
  632.    are included: SLP84-87,91, NACLP89-90, ILPS91, ICLP82,84,86-91,93,
  633.       JICLP92, LP88, RTA89,93, PLILP90-92, ALPUK91, ICOT92, ALP90,92,
  634.       CADE90,92, CTRS90,92, LICS86-91, UNIF89, EPIA89,91,93, TACS91,
  635.       TAPSOFT93, EAIA90
  636.    and the following journals: JLP85-93, JAR91,92, JSC91,92, IANDC82-92.
  637.  
  638.    The ftp server supports tar'ing on the fly, so if you type "get
  639.    bibtex.tar" you will get a tar'ed version of the "bibtex" directory.
  640.    Send comments and bug reports to rscheidhauer@dfki.uni-sb.de.
  641.  
  642. Machine Learning Algorithms Implemented in Prolog:
  643.    In 1988 the Special Interest Group on Machine Learning of the German
  644.    Society for Computer Science (GI e.V.) decided to establish a library
  645.    of PROLOG implementations of Machine Learning algorithms. The library
  646.    includes - amongst others - PROLOG implementations of Winston's arch, 
  647.    Becker's AQ-PROLOG, Fisher's COBWEB, Brazdil's generation of 
  648.    discriminations from derivation trees, Quinlan's ID3, inverse 
  649.    resolution, and Mitchell's version spaces algorithm. The programs are 
  650.    currently available via anonymous ftp-server from the GMD:
  651.  
  652.     ftp.gmd.de:/gmd/mlt/ML-Program-Library [129.26.8.90]
  653.  
  654.    Send additional PROLOG implementations of Machine Learning
  655.    Algorithms, complaints about them and detected bugs or problems
  656.    to Thomas Hoppe, <hoppet@cs.tu-berlin.de>. Send suggestions and
  657.    complaints about the ftp library to Werner Emde, Gesellschaft
  658.    fuer Mathematik und Datenverarbeitung, Bonn, <emde@gmdzi.gmd.de>. 
  659.  
  660. Natural Language Processing in Prolog:
  661.  
  662.    The Prolog and DCG programs from Pereira and Shieber's book, "Prolog
  663.    and Natural Language Analysis", are available by anonymous ftp from
  664.    das.harvard.edu:pub/shieber/pnla/. See the file README for the
  665.    conditions under which the material is distributed. If you retrieve
  666.    the files, please send an email message to the authors letting them
  667.    know how you plan to use them. For further information, write to
  668.    Fernando Pereira <pereira@research.att.com> or Stuart Shieber
  669.    <shieber@das.harvard.edu>.
  670.  
  671. Object-Oriented Program in Prolog:
  672.  
  673.    OL(P), Object Layer for Prolog, is an object-oriented extension to
  674.    Prolog.  It provides an object-oriented structuring and reuse
  675.    mechanism for Prolog in a manner that preserves performance and
  676.    semantics. The object-oriented layer is compiled into Prolog without
  677.    introducing any side-effects.  OL(P) takes the view of objects as
  678.    collections of predicates (called methods).  To Prolog, OL(P) 1.1 adds
  679.    objects with methods, data encapsulation, instances, and multiple
  680.    inheritance. Object methods can access Prolog predicates and vice
  681.    versa. The OL(P) incremental compiler translates OL(P) programs to
  682.    Prolog programs that don't need runtime interpretation (e.g., no
  683.    search is needed for inheritance).  OL(P) 1.1 comes with prepared
  684.    installation for SICStus Prolog and QUINTUS Prolog (both on UNIX),
  685.    documentation, simple built-in project management, some libraries,
  686.    and example programs. The source is included, so you can port OL(P)
  687.    to different platforms, different Prolog systems, and different
  688.    logic programming languages. OL(P) is available by anonymous ftp
  689.    from parcftp.xerox.com:/ftp/pub/ol/ [13.1.64.94]. Written by Markus
  690.    P.J. Fromherz <fromherz@parc.xerox.com>. 
  691.  
  692. Pleuk Grammar Development System:
  693.  
  694.    Pleuk is intended to be a shell for grammar development, in that many
  695.    different grammatical formalisms can be embedded within it.
  696.    Grammatical formalisms that currently work with Pleuk include CFG (a
  697.    simple context-free grammar system), HPSG-PL (a system for developing
  698.    HPSG-style grammars, produced at Simon Fraser University, Canada, by
  699.    Fred Popowich, Sandi Kodric and Carl Vogel), Mike (a simple
  700.    graph-based unification system, enhanced with additional operations
  701.    for the treatment of free word order proposed by Mike Reape in various
  702.    publications), SLE (a graph-based formalism enhanced with arbitrary
  703.    relations in the manner of Johnson & Rosner and Doerre & Eisele.
  704.    Delayed evaluation is used to compute infinite relations.  This system
  705.    has been used for the development of several HPSG-style grammars) and
  706.    Term (a term-based unification grammar system, originally developed
  707.    for the support of Unification Categorial Grammar of Zeevat, Klein and
  708.    Calder). Sample grammars are provided for all of these formalisms.
  709.    Work continues apace on other formalisms, including Bob Carpenter's
  710.    Ale system for typed feature structures, and Veronica Dahl's Static
  711.    Discontinuity Grammars.
  712.  
  713.    Pleuk requires SICStus prolog version 2.1#6 or later, plus a variety
  714.    of ancillary programs available free of charge from many FTP servers.
  715.    Pleuk is available via anonymous FTP from the University of Georgia
  716.    Artificial Intelligence FTP library, hostname
  717.    ai.uga.edu:/ai.natural.language/ as the files pleuk.1.0.tar.Z,
  718.    pleuk.PSmanuals.tar.Z, and pleuk.README.  Pleuk will also be available
  719.    shortly from the Natural Language Software Registry, German Research
  720.    Institute for Artificial Intelligence (DKFI), Saarbruecken.  For more
  721.    information, send email to pleuk@cogsci.ed.ac.uk.
  722.  
  723. Prolog Repository:
  724.    Established by Jocelyn Paine of Experimental Psychology, Oxford
  725.    University in 1987. The current catalogue (January 1991) contains
  726.    30 entries. For catalogue, queries and contributions contact POPX at: 
  727.       popx%vax.ox.ac.uk@oxmail.ox.ac.uk (internet) or 
  728.       popx@uk.ac.ox.vax (janet) 
  729.  
  730.    FTP access is available through the Imperial College archive at
  731.       src.doc.ic.ac.uk  (146.169.2.1)
  732.    in the directory
  733.       computing/programming/languages/prolog/pd-software
  734.    with a short-cut link of:
  735.       packages/prolog-pd-software
  736.    To access it, cd to either of the above directories via
  737.    anonymous ftp. The file README gives a brief summary of the
  738.    contents of the directory and CATALOGUE gives a (long!)
  739.    description of each entry. Entries include the Logic Programming
  740.    Tutor from Paine's book, the DEC-10 public-domain library, the
  741.    Linger natural-language corrector, a simple object-oriented
  742.    add-on for Prolog, graph utilities, among other things.
  743.  
  744.    Files in the archive are also available on MS-DOS floppies for a
  745.    nominal fee to cover the cost of floppies, postage, and packing. 
  746.  
  747. Prolog to SQL Compiler:
  748.    The Prolog to SQL Compiler translates database access requests,
  749.    which consist of a projection term and a database goal, to the
  750.    appropriate SQL query. The compiler is written in standard Edinburgh
  751.    Prolog and has been ported to a number of Prologs. The code posted to
  752.    comp.lang.prolog works in ECRC's SEPIA Prolog, but should be easily
  753.    ported to other Prologs. A detailed tech report on the implementation
  754.    is available by email from draxler@sun1.cis.uni-muenchen.de (include
  755.    your full postal address). The compiler is copyright, but may be used
  756.    free of charge for non-commercial purposes and redistributed provided
  757.    the copyright notice is retained intact.
  758.  
  759. PSI:
  760.    PSI is a handy system for the management and retrieval of your
  761.    personal data, be it addresses, CD collections, or bibliographic
  762.    references. It is intended for the non-commercial user. It may not be
  763.    as full-fledged as some data-base systems, but has some features that
  764.    you won't find in most commercial systems. Also, you may find it
  765.    easier to set up and faster to use. PSI is useful for a broad range of
  766.    data. Indexing with descriptors makes searching for the data you need
  767.    fast, and the interface to other data-base formats (import and export)
  768.    is quite powerful. PSI was written in LPA MacProlog and is a "genuine
  769.    'double clickable' Mac application". PSI runs on all Macs with System
  770.    6 or 7 in 1MB of main memory. As LPA MacProlog isn't yet 32-bit clean,
  771.    PSI isn't either. Extensive documentation and some examples are
  772.    included. PSI is available by anonymous ftp from
  773.    sumex-aim.stanford.edu, directory info-mac/app, file psi-23.hqx. It
  774.    was also available on a recent Nautilus CD-ROM and will be on the
  775.    first Info-Mac CD-ROM.
  776.  
  777. SEL:
  778.  
  779.    SEL is a declarative set processing language. Its main features are
  780.    subset and equational program clauses, pattern matching over sets,
  781.    support for efficient iteration and point-wise/incremental computation
  782.    over sets, the ability to define transitive closures through circular
  783.    constraints, meta-programming and simple higher-order programming, and
  784.    a modest user-interface including tracing. The language seems
  785.    well-suited to a number of problems in graph theory, program analysis,
  786.    and discrete mathematics. The SEL compiler is written in Quintus
  787.    Prolog and the run-time system is written in C. It generates WAM-like
  788.    code, extended to deal with set-matching, memoization, and the novel
  789.    control structure of the language. SEL is available by anonymous FTP
  790.    from ftp.cs.buffalo.edu:users/bharat/SEL2/.  The FTP release comes with a
  791.    user manual, bibliography of papers (including .dvi files), several
  792.    sample programs, and source code. For further information, write to
  793.    Bharat Jayaraman <bharat@cs.buffalo.edu>.
  794.  
  795. ----------------------------------------------------------------
  796. Subject: [1-3]  Mailing Lists
  797.  
  798. Prolog and Logic Programming:
  799.    prolog@sushi.stanford.edu (general)
  800.    prolog-hackers@sushi.stanford.edu (nitty gritty)
  801.  
  802.    All requests to be added to or deleted from this list, problems,
  803.    questions, etc., should be sent to prolog-request@sushi.stanford.edu
  804.  
  805.    [The host sushi.stanford.edu no longer exists, as of 11/24/92.
  806.     Does anybody know the new location of the mailing lists?]
  807.  
  808. Lambda Prolog:
  809.    lprolog@cis.upenn.edu
  810.  
  811.    To subscribe, send mail to lprolog-request@cis.upenn.edu.
  812.  
  813. Electronic Journal of Functional and Logic Programming (EJFLP)
  814.  
  815.    EJFLP is a refereed journal that will be distributed for free via e-mail.
  816.    The aim of EJFLP is to create a new medium for research investigating the
  817.    integration of the functional, logic and constraint programming paradigms.
  818.  
  819.    For instructions on submitting a paper, send an empty mail message with 
  820.       Subject: Help
  821.    to: 
  822.       submissions@ls5.informatik.uni-dortmund.de. 
  823.    You will receive an acknowledgment of your submission within a few hours.
  824.  
  825.    To subscribe to the journal, send an empty mail message to the following
  826.    address:
  827.        subscriptions@ls5.informatik.uni-dortmund.de
  828.    You will receive an acknowledgment of your subscription within a few days. 
  829.  
  830.    If there are any problems with the mail-server, send mail to
  831.    ejflp.op@ls5.informatik.uni-dortmund.de. 
  832.  
  833.    The editorial board is: Rita Loogen (RWTH Aachen), Herbert Kuchen (RWTH
  834.    Aachen), Michael Hanus (MPI-Saarbruecken), Manuel MT Chakravarty (TU
  835.    Berlin), Martin Koehler (Imperial College London), Yike Guo (Imperial
  836.    College London), Mario Rodriguez-Artalejo (Univ. Madrid), Andy Krall
  837.    (TU Wien), Andy Mueck (LMU Muenchen), Tetsuo Ida (Univ. Tsukuba,
  838.    Japan), Hendrik C.R. Lock (IBM Heidelberg), Andreas Hallmann (Univ.
  839.    Dortmund), Peter Padawitz (Univ. Dortmund), Christoph Brzoska (Univ.
  840.    Karlsruhe).
  841.  
  842. PDC-L:
  843.    PDC-L@hearn.bitnet is a discussion list for PDC Prolog users.
  844.  
  845. Theorem Provers:
  846.    theorem-provers@ai.mit.edu
  847.  
  848.    This (unmoderated) list is intended for announcements of interest to
  849.    people interested in automated theorem proving.
  850.  
  851.    To subscribe, send your email address to theorem-provers-request@ai.mit.edu.
  852.  
  853. ----------------------------------------------------------------
  854. Subject: [1-4] Books and Magazine Articles
  855.  
  856. A BiBTeX bibliography of Logic Programming Conferences is available by
  857. anonymous ftp from duck.dfki.uni-sb.de. See [1-2] above.
  858.  
  859. A partially annotated bibliography of work on integrating
  860. object-oriented and logic programming is available by anonymous ftp
  861. from menaik.cs.ualberta.ca:pub/oolog/ in PostScript and BibTeX
  862. formats. Written by Vladimir Alexiev <vladimir@cs.ualberta.ca>.
  863.  
  864. The following books are regarded as popular and widely used. Also
  865. included are some books about WAM. This is not intended to be a complete
  866. Prolog bibliography.
  867.  
  868.    Ait-Kaci, Hassan, "Warren's Abstract Machine: A Tutorial Reconstruction",
  869.    MIT Press, Cambridge, MA. 1991.
  870.    ISBN: 0-262-51058-8 (paper), 0-262-01123-9 (cloth).
  871.  
  872.    Bratko, Ivan, "Programming in Prolog for Artificial Intelligence", 
  873.    2nd Edition, Addison-Wesley, 1990 
  874.  
  875.    Campbell, J.A. (ed):     "Implementations of Prolog", John Wiley, 1984
  876.  
  877.    Clocksin, W.F. and Mellish, C.S: "Programming in Prolog", 3rd Ed.
  878.    Springer Verlag, 1987, $29. (Basic Introduction).
  879.  
  880.    Conlon, Tom: "Programming in Parlog". Addison-Wesley, 1989, 
  881.    ISBN 0-201-17450-2.
  882.  
  883.    Covington, Michael A.; Nute, D.; and Vellino, A. "Prolog
  884.    Programming in Depth", Scott, Foresman & Co., 1987. ISBN 0-521-40984-5
  885.  
  886.    Deville, Yves: "Logic Programming, Systematic Program Development",
  887.    International Series in Logic Programming, Addison-Wesley, 1990, 338 pages.
  888.    ISBN 0-201-17576-2. 
  889.  
  890.    Gregory, Steve: "Parallel Logic Programming in Parlog: The Language
  891.    and Its Implementation", Addison-Wesley, 1987, ISBN 0-201-19241-1.
  892.  
  893.    Hogger, C.J.: "Introduction to Logic Programming", Academic Press 1984
  894.  
  895.    O'Keefe, Richard A.:     "The Craft of PROLOG", MIT Press, 1990, 
  896.    ISBN 0-262-15039-5.
  897.  
  898.    Kluzniak and Szpakowicz: "Prolog for Programmers", Academic Press 1985
  899.  
  900.    Kowalski, R.A.: "Logic for Problem Solving", New York 1979, Elsevier Publ.
  901.  
  902.    Le, Tu Van,  "Techniques of Prolog programming, with implementation
  903.    of logical negation and quantified goals", John Wiley, New York, 1993.
  904.    ISBN: 0-471-57175-X (American edition), 0-471-59970-O (International
  905.    edition).  LnProlog, a Prolog interpreter that supports negative
  906.    finding queries and quantified queries is available together with
  907.    the book. 
  908.  
  909.    LLoyd, John: "Foundations of Logic Programming", 2nd Edition,
  910.    Springer-Verlag, 1988. (Intro to logic programming theory.)
  911.  
  912.    David Maier and David S. Warren: "Computing with Logic: Logic
  913.    Programming with Prolog", Benjamin Cummings, Menlo Park, CA, 1989.
  914.  
  915.    Dennis Merritt: "Building Expert Systems in Prolog", Springer-Verlag 1989.
  916.    Explains how to build various expert system shells in Prolog, including
  917.    forward/backward chaining, FOOPS, rete-network, frames and more. Includes
  918.    complete source code listings. (Source code from the book is also
  919.    sold on disk by Amziod.)
  920.  
  921.    Dennis Merritt: "Adventure in Prolog", Springer-Verlag, 1990. 
  922.    Teaches Prolog by leading the reader through the construction of an
  923.    adventure game. The exercises lead the reader through three other
  924.    programs:  an intelligent database, an expert system and an order-entry
  925.    program.  While most texts teach Prolog with fragments of interesting code,
  926.    this book takes a more pragmatic (as opposed to theoretical approach) and
  927.    shows the reader how to assemble complete Prolog programs.
  928.  
  929.    Nilsson, Ulf and Maluszynski, Jan, "Logic, Programming and Prolog",
  930.    John Wiley & Sons, 1990, ISBN 0-471-92625-6.
  931.  
  932.    Peter Ross, "Advanced Prolog: Techniques and Examples",
  933.    Addison-Wesley, 1989, ISBN 0-201-17527-4.
  934.  
  935.    Sterling, Leon (ed): "The Practice of Prolog", MIT Press, 1990
  936.    ISBN 0-262-19301-9
  937.  
  938.    Sterling, Leon, Shapiro, Ehud: "The Art of Prolog: Advanced Programming
  939.    Techniques", MIT Press, 1986 ISBN 0-262-19250-0
  940.  
  941.    Tick, E.: "Parallel Logic Programming". MIT Press, 1991
  942.  
  943.    David H. D. Warren: "An Abstract Prolog Instruction Set", Technical Note
  944.    No 309, SRI International, Menlo Park, CA, 1983.
  945.  
  946.    David H. D. Warren, "Logic Programming and Compiler Writing," in
  947.    Software-Practice and Experience 10(2), 1980.
  948.  
  949.    Wolfram, D.A., "The Clausal Theory of Types", Cambridge Tracts in 
  950.    Theoretical Computer Science {\bf 21}, Cambridge University Press,
  951.    1993.
  952.  
  953.    Subrata Kumar DAS, "Deductive Databases and Logic Programming",
  954.    Addison-Wesley Publishing Company, July 1992, 448 pages. 
  955.    ISBN 0-201-56897-7. 
  956.  
  957. Magazine Articles:
  958.  
  959.    BYTE Magazine, August 1987. 5 introductory articles on Prolog.
  960.  
  961.    Uwe Schreiweis: Beredte Logik, Konzepte der 'KI-Sprache" Prolog,
  962.    (Eloquent Logic, Concepts of the AI language Prolog), iX Magazine,
  963.    October 1992, pages 84-90.
  964.  
  965.    Uwe Schreiweis: Basis der Fuenf, Die Sprache Prolog in der Public
  966.    Domain, (Base of the Five, Prolog in the Public Domain), iX Magazine,
  967.    October 1992, pages 92-94.
  968.  
  969.    Uwe Schreiweis: Fuenfte Generation, Kommerzielle Prolog-Systeme,
  970.    (Fifth Generation, Commercial Prolog Systems), iX Magazine, October
  971.    1992, pages 96-102.
  972.  
  973.    Klaus Bothe: Weniger Raum, Speicherplatzbezogener Prolog-Benchmark,
  974.    (Less Space, A Space Oriented Prolog Benchmark), iX Magazine, October
  975.    1992, pages 106-7.
  976.  
  977. Magazines Related to Prolog:
  978.  
  979.    Logic Programming Newsletter (4 issues/yr)
  980.    Included with membership in the Association for Logic Programming 
  981.    ($20 regular, $10 students). For membership information, write to
  982.    Cheryl Anderson (ALP), DoC-ICSTM, 180 Queens Gate, London SW7 2BZ,
  983.    UK, phone +44-71-589-5111 x5011, fax +44-71-589-1552, or send email
  984.    to alp@doc.ic.ac.uk. Contributions are welcome and should be sent
  985.    to Andrew Davidson <ad@cs.mu.oz.au>. 
  986.  
  987.    AI Communications (4 issues/yr)
  988.    "The European Journal on Artificial Intelligence"  ISSN 0921-7126,
  989.    European Coordinating Committee for Artificial Intelligence.
  990.  
  991.    AI Expert (issued monthly) ISSN 0888-3785, Miller Freeman Publishers
  992.    See a copy of the magazine for list of BBS's in NA. On CompuServe: GO
  993.    AIEXPERT. Regularly reviews Prolog interpreters and compilers.
  994.  
  995.    Expert Systems (issued Feb, May, Aug and Nov) ISSN 0266-4720,
  996.    Learned Information (Europe) Ltd. Subscription: GBP 85 or USD 110
  997.  
  998.    IEEE Expert (issued bimonthly) ISSN 0885-9000, IEEE Computer Society
  999.  
  1000.    The Journal of Logic Programming (issued bimonthly), (North-Holland),
  1001.    Elsevier Publishing Company, ISSN 0743-1066
  1002.  
  1003.    New Generation Computing, Springer-Verlag. (LOTS of Prolog in it.)
  1004.  
  1005. ----------------------------------------------------------------
  1006. Subject: [1-5]  The Prolog 1000 Database
  1007.  
  1008. The Prolog 1000 is a database of real Prolog applications being
  1009. assembled in conjunction with the Association for Logic Programming
  1010. (ALP) and PVG. The aim is to demonstrate how Prolog is being used in
  1011. the real world and it already contains over 500 programs with well
  1012. over 2 million lines of code. The database is available for research
  1013. use in SGML format from the Imperial College archive
  1014.    src.doc.ic.ac.uk:packages/prolog-progs-db/prolog1000.v1.gz
  1015. If you have or know about a program that might qualify for inclusion,
  1016. send an email message to Al Roth (alroth@cix.compulink.co.uk) for an
  1017. electronic entry form which only takes a few minutes to complete. Or
  1018. write to Prolog 1000, PO Box 137, Blackpool, Lancashire, FY2 0XY,
  1019. U.K., Fax: +44 253 53811 Telephone: +44 253 58081. (Floppy disks for
  1020. PC or Mac in text form are also welcome, and paper entries may also be
  1021. sent). Queries may also be addressed to: Chris Moss
  1022. (cdsm@doc.ic.ac.uk), Leon Sterling (leon@alpha.ces.cwru.edu).
  1023. ----------------------------------------------------------------
  1024. Subject: [1-6] X-Windows Interfaces
  1025.  
  1026. PI:
  1027.    PI is an interface between Prolog applications and the X Window System
  1028.    that aims to be independent from the Prolog engine, provided that it
  1029.    has a Quintus-style foreign function interface (such as SICStus, YAP).
  1030.    It is mostly written in Prolog and is divided in two libraries: (1)
  1031.    Edipo, a low-level interface to the Xlib functions, and (2) Ytoolkit,
  1032.    a high-level user interface toolkit that allows you to create and
  1033.    manage graphical objects, define new classes of objects, and handle
  1034.    user interaction. PI is available by anonymous ftp from
  1035.    ftp.ncc.up.pt:/pub/prolog/pi_1.2.tar.gz and includes documentation
  1036.    and some demos. Also see ytoolkit.tar.Z. PI has been tested in
  1037.    Quintus Prolog 3.1.1 and SICStus 2.1 #8. Send questions, comments,
  1038.    and bug reports to Ze' Paulo Leal, Universidade de Porto, Portugal,
  1039.    <zp@ncc.up.pt>. 
  1040.  
  1041. XWIP: 
  1042.    export.lcs.mit.edu:/contrib/xwip.tar.Z 
  1043.    ftp.uu.net:X/contrib/xwip.tar.Z
  1044.  
  1045.    XWIP is an X Windows interface for PROLOG.
  1046.  
  1047. XPCE:
  1048.  
  1049.    XPCE is an object-oriented X-window interface toolkit for symbolic
  1050.    programming languages (Prolog and Lisp), offering a high level of
  1051.    abstraction for communication with X11, Unix processes, Unix
  1052.    networking facilities (sockets) and Unix files. XPCE's built-in
  1053.    classes (about 150) are mostly written in C.  The XPCE/Prolog
  1054.    interface allows the user to create and manipulate instances of these
  1055.    classes.  The user can also create new XPCE classes from Prolog.
  1056.    XPCE's window related classes provide various styles of menus,
  1057.    primitive graphical objects, compound graphical objects and Emacs
  1058.    oriented programmable text manipulation windows. The distribution
  1059.    contains several demo programs, including a diagram drawing tool
  1060.    (PceDraw), an animation demo, an Epoch-like editor, a graphical
  1061.    interface to Unix ispell, and an online hyper-text manual for XPCE
  1062.    itself.  A demo version of XPCE/SWI-Prolog for Linux may be obtained
  1063.    by anonymous ftp from swi.psy.uva.nl:pub/xpce/linux/ [145.18.114.17].
  1064.    The non-demo versions (for SWI-Prolog, SICStus Prolog, Lucid Common
  1065.    Lisp and LispWorks) require filling out a license and paying a fee
  1066.    (see the file pub/xpce/INFO).  To be added to the mailing list
  1067.    xpce@swi.psy.uva.nl send mail to xpce-request@swi.psu.uva.nl. Send
  1068.    bugs to xpce-bugs@swi.psy.uva.nl. [Mail to xpce-request bounced, 7/8/93.]
  1069.  
  1070. ----------------------------------------------------------------
  1071. Subject: [1-7] Is there a straight-forward way of compiling Prolog to C?
  1072.  
  1073. Two methods of compiling Prolog to C have been reported in the
  1074. literature:
  1075.    -  WAM-based approaches
  1076.    -  Continuation-based approaches
  1077.  
  1078. The WAM-based approach compiles Prolog programs into a sequence of C
  1079. function or macro calls to WAM instructions. A brief description of
  1080. this method and some results are given in the paper:
  1081.  
  1082.    Michael R. Levy and R. Nigel Horspool, "Translating Prolog to C: a
  1083.    WAM-based Approach", in Proceedings of the Second Compulog Network
  1084.    Area Meeting on Programming Languages, and the Workshop on Logic
  1085.    Languages in Pisa, May 1993. (Available by anonymous ftp from 
  1086.    csr.uvic.ca:/pub/mlevy/.)
  1087.  
  1088. A "quick-and-dirty" method is to implement the WAM functions as described
  1089. in Ait-Kaci's tutorial, to label each call with a C case label, and then throw
  1090. a giant switch(P) statement around the entire sequence of calls, where P
  1091. is the WAM program counter.  On return from any instruction that modifies
  1092. P, a "goto Start" must be inserted. (This method was posted by Rob
  1093. Scott, <rbs@aisb.ed.ac.uk>, based on the JANUS papers by Saraswat.)
  1094.  
  1095. This strategy will work, but does not allow you to modularize your
  1096. prolog program. Predicates in prolog seem to generate 8 to 15 WAM
  1097. instructions per clause, so (assuming very roughly a clause per
  1098. line)you might expect your 1,000 line program to expand to a switch
  1099. statement containing up to 15,000 lines. Some C compilers can't handle
  1100. such a big switch statement.
  1101.  
  1102. Levy and Horspool solve this problem by compiling each Prolog
  1103. predicate to a seperate C function. A dispatch loop mechanism is used
  1104. to call the C functions. C switch statements are used only inside the
  1105. functions.  A predicate that calls another predicate sets P to contain
  1106. the address of the C function that implements the called predicate,
  1107. (and sets another register called W in their scheme) and then returns
  1108. to the dispatcher instead of calling the predicate. This bypasses the
  1109. C run-time stack.  This lets one exploit WAM optimizations (like LCO)
  1110. and yet retain the ability to create many modules. Their system
  1111. performs well when compared with byte-code compilers, but translated
  1112. code runs slower than code produced by native code compilers.  On the
  1113. other hand, it outputs portable ANSI C that can run on any machine
  1114. with a C compiler.
  1115.  
  1116. Other approaches to translating to C use continuations. The idea here
  1117. is to translate every Prolog predicate to a C function that has
  1118. an additional argument, namely a continuation function. If the function
  1119. fails, it simply returns, but if it succeeds, it executes the continuation.
  1120. When the function regains control from the continuation, it can then try
  1121. to generate a new solution. Here are two references
  1122. that describe systems built using continuations:
  1123.  
  1124.    J. L. Weiner and S. Ramakrishnan, "A Piggy-Back Compiler for Prolog",
  1125.    in Proceedings of SIGPLAN T88 Conference on Programming Language
  1126.    Design and Implementation, Atlanta, Georgia, 1988, pages 288-296.
  1127.  
  1128.    J. L. Boyd and G. M. Karam, "Prolog in C", Carleton University,
  1129.    Ottawa, 1988. 
  1130.  
  1131. Oliver Ridoux <Olivier.Ridoux@irisa.fr> reports that a
  1132. continuation-based approach works well when used to compile
  1133. LambdaProlog. His scheme translates every predicate into a function
  1134. that uses and modifies the success and failure continuations, with
  1135. recursion in the predicate becoming iteration in the continuation
  1136. passing mechanism. Inside the function one uses whichever intermediate
  1137. machine one fancies. Clauses within the function can be either the
  1138. branches of a switch statement or simply labelled when using a C
  1139. system that can store labels. This approach can still generate
  1140. monstrous C programs that blow up the C compiler, but the C programs
  1141. aren't as large as those generated by a one module to a function
  1142. scheme. Approaches that replace recursion in a predicate with
  1143. recursion in a function tend to overload the C stack and lead to
  1144. sloppy memory management.  Two technical reports describing Ridoux's
  1145. approach are available by anonymous ftp from ftp.irisa.fr in pm/*.ps.Z
  1146. and mailv06/*.ps.Z.
  1147.  
  1148. Michael Covington <mcovingt@ai.uga.edu> points out that a very simple
  1149. approach is to write a Prolog interpreter in C, then store the Prolog
  1150. program in that program's data! This will, of course, execute slowly.
  1151. One might imagine all sorts of other schemes. For example, a query
  1152. could be treated as a stack of "suspensions" (with the left-most goal
  1153. on top).  The top suspension is executed by selecting the appropriate
  1154. clause (possibly using indexing), and then, if necessary, pushing new
  1155. suspensions on the stack (the body of the clause whose head unified
  1156. with the current suspension).
  1157.  
  1158. Another question to ask is this: Is there any reason why you should want to
  1159. convert Prolog to C at all? George Saab of Quintus Corp. pointed out that,
  1160. with Quintus Prolog, you can create a standard .o file from a Prolog file,
  1161. which can then be linked with your other .o files to create an executable.
  1162. What's more, your Prolog code can be called from C code and vice versa.
  1163.  
  1164. On ther hand, the advantage of distributing "Prolog objects" as C rather than
  1165. .o files is portability.
  1166.  
  1167. M. Gaspari  and G. Attardi describe an approach to translating Prolog to C
  1168. based on the provision of a common runtime architecture. This is
  1169. described in 
  1170.  
  1171.    G. Attardi and M. Gaspari, "Multilanguage Interoperability", in
  1172.    Proceedings of The 3rd International Symposium, PLILP 91, 
  1173.    Springer Verlag, LNCS #528, 1991.
  1174.  
  1175. [Note: Thanks to Michael Levy, Department of Computer Science,
  1176. University of Victoria, <mlevy@csr.uvic.ca>, for writing this section.]
  1177.  
  1178. ----------------------------------------------------------------
  1179. Subject: [1-8] What is the Basic Andorra Model and AKL?
  1180.  
  1181. The Basic Andorra Model is a way to execute definite clause programs
  1182. that allows dependent and-parallelism to be exploited transparently.
  1183. It also supports nice programming techniques for search programs.  The
  1184. idea is to first reduce all goals that match at most one clause.  When
  1185. no such goal exists, any goal (e.g., the left-most) may be chosen.
  1186. The BAM was proposed by David H. D. Warren, and his group at Bristol
  1187. has developed an AND-OR parallel implementation called Andorra-I,
  1188. which also supports full Prolog.  See, for example, 
  1189.  
  1190.    Seif Haridi and Per Brand, "Andorra Prolog, an integration of Prolog
  1191.    and committed choice languages", in Proceedings of the FGCS 1988,
  1192.    ICOT, Tokyo, 1988.
  1193.  
  1194.    Vitor Santos Costa, David H. D. Warren, and Rong Yang, "Two papers on
  1195.    the Andorra-I engine and preprocessor", in Proceedings of the 8th
  1196.    ICLP. MIT Press, 1991.
  1197.  
  1198.    Steve Gregory and Rong Yang, "Parallel Constraint Solving in
  1199.    Andorra-I", in Proceedings of FGCS'92. ICOT, Tokyo, 1992.
  1200.  
  1201. AKL (Andorra Kernel Language) is a concurrent constraint programming
  1202. language that supports both Prolog-style programming and committed
  1203. choice programming.  Its control of don't-know nondeterminism is based
  1204. on the Andorra model, which has been generalised to also deal with
  1205. nondeterminism encapsulated in guards and aggregates (such as bagof)
  1206. in a concurrent setting. See, for example,
  1207.  
  1208.    Sverker Janson and Seif Haridi, "Programming Paradigms of the Andorra
  1209.    Kernel Language", in Proceedings of ILPS'91. MIT Press, 1991.
  1210.  
  1211.    Torkel Franzen, "Logical Aspects of the Andorra Kernel Language", SICS
  1212.    Research Report R91:12, Swedish Institute of Computer Science, 1991.
  1213.  
  1214.    Torkel Franzen, Seif Haridi, and Sverker Janson, "An Overview of the
  1215.    Andorra Kernel Language", In LNAI (LNCS) 596, Springer-Verlag, 1992.
  1216.  
  1217.    Sverker Janson, Johan Montelius, and Seif Haridi, "Ports for Objects
  1218.    in Concurrent Logic Programs", in Research Directions in Concurrent
  1219.    Object-Oriented Programming, MIT Press, 1993 (forthcoming).
  1220.  
  1221. The above papers on AKL are available by anonymous ftp from sics.se in
  1222. /pub/ccp/papers. An (as yet non-released) prototype implementation of
  1223. AKL is available for research purposes (contact sverker@sics.se).
  1224.  
  1225. ----------------------------------------------------------------
  1226. ;;; *EOF*
  1227. ---------------------------------------------------------------------------
  1228.  
  1229.  
  1230.  
  1231.  
  1232. Archive-name: prolog/resource-guide/part2
  1233. Last-Modified: Wed Oct  6 00:03:08 1993 by Mark Kantrowitz
  1234. Version: 1.12
  1235.  
  1236. ;;; ****************************************************************
  1237. ;;; Prolog Resource Guide ******************************************
  1238. ;;; ****************************************************************
  1239. ;;; prg_2.faq -- 56588 bytes
  1240.  
  1241. This is part two of the Prolog Resource Guide. This part lists
  1242. available Prolog implementations, both free and commercial.
  1243.  
  1244. Send suggestions and comments to: mkant+prolog-guide@cs.cmu.edu
  1245.  
  1246. Prolog Implementations (Part 2):
  1247.   [2-1] Public Domain or Free Prolog Implementations
  1248.   [2-2] Commercial Prolog Implementations
  1249.  
  1250. Search for [#] to get to topic number # quickly. In newsreaders which
  1251. support digests (such as rn), [CTRL]-G will page through the answers.
  1252.  
  1253. ----------------------------------------------------------------
  1254. Subject: [2-1] Public Domain or Free Prolog Implementations
  1255.  
  1256. The following list of free Prolog and logic programming
  1257. implementations excludes those listed in the comp.lang.lisp FAQ (i.e.,
  1258. Prolog interpreters written in Lisp).  Note that commercial prolog
  1259. implementations are often more robust and better supported than public
  1260. domain and free prolog implementations.
  1261.  
  1262.    A.D.A. Public Domain Prolog:
  1263.       aisun1.ai.uga.edu:ai.prolog/adapdpro.zip
  1264.  
  1265.       A rather slow implementation of Prolog for MS-DOS systems, originally
  1266.       a product of Automata Design Associates (now defunct), 1570
  1267.       Arran Way, Dresker, PA 19025, 215-335-5400. 
  1268.  
  1269.    ALF:
  1270.       ALF (Algebraic Logic Functional programming language) is a
  1271.       language which combines functional and logic programming techniques.
  1272.       The foundation of ALF is Horn clause logic with equality which
  1273.       consists of predicates and Horn clauses for logic programming, and
  1274.       functions and equations for functional programming.  The abstract
  1275.       machine is based on the Warren Abstract Machine (WAM) with several
  1276.       extensions to implement narrowing and rewriting.    In the current
  1277.       implementation programs of this abstract machine are executed by an
  1278.       emulator written in C. It is available by anonymous ftp from
  1279.       ftp.germany.eu.net (aka simpson.germany.eu.net) in the directory
  1280.       /pub/programming/languages/LogicFunctional as the files alf_*.zoo
  1281.       (Documentation, C sources for the emulator, the preprocessor and the
  1282.       compiler). For further information, contact Rudolf Opalla
  1283.       <opalla@julien.informatik.uni-dortmund.de>.
  1284.  
  1285.    Aquarius Prolog:
  1286.  
  1287.       Aquarius Prolog is a high-performance, portable Prolog implementation
  1288.       developed since 1989 by the Aquarius Project at UC/Berkeley, the Advanced
  1289.       Computer Architecture Laboratory (ACAL) at the University of Southern
  1290.       California (USC), and at Digital Equipment Corporation's Paris Research
  1291.       Laboratory. The developers are Tom Getzinger, Ralph Clarke Haygood, and
  1292.       Peter Van Roy. Aquarius Prolog includes:
  1293.  
  1294.      - A compiler with global analysis.  The compiler is built around the
  1295.        Berkeley Abstract Machine (BAM) execution model for Prolog. BAM
  1296.        retains desirable features of the Warren Abstract Machine (WAM),
  1297.        but allows for significant further optimizations and is easier to
  1298.        map onto actual general-purpose machines.
  1299.  
  1300.      - A back-end that maps the BAM onto various actual general-purpose
  1301.        machines, including MIPS R3000 (DEC Ultrix and MIPS RISC/os),
  1302.        SPARC (SunOS), HP 9000 300/400 with MC68020, MC68030 or MC68040
  1303.        processors (HP-UX), and Sun3 (SunOS).
  1304.  
  1305.      - A run-time system offering substantially the same built-in 
  1306.            predicates and memory management as Quintus Prolog, with additions 
  1307.            such as two kinds of destructive assignment.  Most of the built-in 
  1308.            predicates are written in Prolog, with little or no performance 
  1309.            penalty.
  1310.  
  1311.       Aquarius Prolog also includes an interpreter and documentation.
  1312.       Aquarius Prolog comes in two distributions, Enduser and Full. The
  1313.       latter includes full source code and implementation notes.
  1314.  
  1315.       Aquarius Prolog may be obtained free of charge from USC, after signing 
  1316.       and returning a license agreement. To get the license agreement, send a
  1317.       message to listserv@acal-server.usc.edu with 
  1318.      get aquarius-info license
  1319.       in the message body. To get more information about the Full and
  1320.       Enduser distributions, send the listserver a message containing
  1321.       one or both of the two lines: 
  1322.           get aquarius-info readme-full
  1323.           get aquarius-info readme-enduser
  1324.       To subscribe to the aquarius-prolog mailing list, send the listserver a
  1325.       message with body: 
  1326.           subscribe aquarius-prolog <Your real name here>
  1327.       To get more information about the abilities of the listserver, send it a
  1328.       message with 'help' in the body.
  1329.  
  1330.       For further information, write to University of Southern California,
  1331.       Advanced Computer Architecture Laboratory (ACAL), Attn: Aquarius Prolog
  1332.       Licensing, 3740 S. McClintock, Suite 131, Los Angeles, CA 90089-2561, or
  1333.       send email to aquarius@acal-server.usc.edu.
  1334.  
  1335.    BeBOP:
  1336.       The BeBOP language combines sequential and parallel Logic Programming
  1337.       (LP), object oriented programming and meta-level programming. The LP
  1338.       component offers both don't know non-determinism and stream AND
  1339.       parallelism, a combination not possible with concurrent LP languages.
  1340.       BeBOP's object oriented features include object IDs, encapsulation,
  1341.       message passing, state updating, and object behaviour modification.
  1342.       The meta-level capabilities are based on the treatment of Prolog
  1343.       theories as first order entities, which enables them to be updated
  1344.       easily and lets fragments to be passed between objects in messages.
  1345.       BeBOP is implemented by translation down to NU-Prolog, and its
  1346.       parallel extension, PNU-Prolog.  The BeBOP system (BeBOP and bp) and
  1347.       the PNU-Prolog preprocessor pnp can be obtained by anonymous ftp from
  1348.       munnari.oz.au:pub/bebop.tar.Z [128.250.1.21].  The release comes with
  1349.       a user manual, several papers (in Postscript format), sample programs,
  1350.       and source code.  The BeBOP system requires the NU-Prolog system,
  1351.       compiler and interpreter, the pnp preprocessor (which is included as
  1352.       part of the BeBOP system release), GCC or a similar compiler, Yacc (or
  1353.       Bison) and Lex. For more information, contact Andrew Davison,
  1354.       <ad@cs.mu.oz.au>, Dept. of Computer Science, University of Melbourne,
  1355.       Parkville, Victoria 3052, Australia, call +61 3-287-9172/9101, or fax
  1356.       +61 3-348-1184.
  1357.  
  1358.    BinProlog:
  1359.       clement.info.umoncton.ca:BinProlog/binpro.1.71.tar.Z [139.103.16.2]
  1360.       The file papers.tar.Z contains papers related to the implementation.
  1361.  
  1362.       BinProlog replaces the WAM by a more compact continuation passing
  1363.       logic engine based on a mapping of full Prolog to binary logic
  1364.       programs.  BinProlog is free for research and other non-profit
  1365.       purposes. Version 1.71 runs on Sparc, Sun3, NeXT, and 386/486. The
  1366.       compiler makes 400 KLIPS on a Sparc 10-20 (101 KLIPS on a NeXT) and
  1367.       still uses a very small (38K under Solaris 2.1) emulator, making it
  1368.       among the fastest freely available C-emulated Prologs. Comments and
  1369.       bug reports should be sent to binprolog@info.umoncton.ca.
  1370.  
  1371.    CLP(R):
  1372.       CLP(R) is a constraint logic programming language with real-arithmetic
  1373.       constraints.  The implementation contains a built-in constraint solver
  1374.       which deals with linear arithmetic and contains a mechanism for delaying
  1375.       nonlinear constraints until they become linear.  Since CLP(R) subsumes
  1376.       PROLOG, the system is also usable as a general-purpose logic programming
  1377.       language.     It includes facilities for meta-programming with constraints.
  1378.       The system consists of a compiler, byte-code emulator, and constraint
  1379.       solver. CLP(R) is written entirely in C and runs on Suns, Vaxen,
  1380.       MIPS-based machines (Decstations, Silicon Graphics), IBM RS6000s and
  1381.       PS2s. Includes MS-DOS support. It is available free from IBM for 
  1382.       academic and research purposes only. For more information, write
  1383.       to Joxan Jaffar, H1-D48, IBM Thomas J. Watson Research Center,
  1384.       P.O. Box 704, Yorktown Heights, NY 10598, or send email to
  1385.       joxan@watson.ibm.com or joxan@yktvmh.bitnet. Current version 1.2.
  1386.  
  1387.    Common ESP:
  1388.  
  1389.       CESP (Common Extended Self-contained Prolog) is an object-oriented
  1390.       system by the AI Language Research Institute, Kamakura, Japan. The
  1391.       binary is free for R & D use only -- send 1/4in CMT Sun3 and Sun4
  1392.       (Sparc) with Sun OS R4.0.3, R4.1 or R4.1.1. For more information,
  1393.       write to AI Language Research Institute Ltd, Yoshitoku Bldg, Shiba
  1394.       3-15-14, Minato-Ku, Tokyo 105, Japan, fax +81 3 3456 4418, or send
  1395.       email to k-hata@air.co.jp or matsuura@air.co.jp.
  1396.  
  1397.    CORAL:
  1398.       CORAL is a deductive database/logic programming system developed at
  1399.       the University of Wisconsin-Madison. It is a declarative language
  1400.       based on Horn-clause rules with extensions like SQL's group-by and
  1401.       aggregation operators, and uses a Prolog-like syntax.
  1402.  
  1403.       CORAL is available via anonymous ftp from ftp.cs.wisc.edu.  The
  1404.       distribution includes source code compatible with AT&T C++ Version 2.0
  1405.       or later, executables for Decstations and SUN 4s, the CORAL User
  1406.       Manual, and some related papers containing a language overview and
  1407.       implementation details.  (A version of the source code compatible with
  1408.       GNU g++ will be available shortly.) For more information, contact
  1409.       Raghu Ramakrishnan, <raghu@ricotta.cs.wisc.edu>.
  1410.  
  1411.    cu-Prolog:
  1412.       cu-Prolog is an experimental constraint logic programming language
  1413.       available free from Japan's Institute for New Generation Computer
  1414.       Technology (ICOT). Unlike most conventional CLP systems, cu-Prolog
  1415.       allows user-defined predicates as constraints and is suitable for
  1416.       implementing a natural language processing system based on the
  1417.       unification-based grammar. For example, the cu-Prolog developers
  1418.       implemented a JPSG (Japanese Phrase Structure Grammar) parser in
  1419.       cu-Prolog with the JPSG Working Group (the chairman is Prof. GUNJI,
  1420.       Takao of Osaka University) at ICOT. cu-Prolog is a complete
  1421.       implementation of Constraint Unification (cu), hence the name.
  1422.       cu-Prolog is implemented in C for BSD UNIX 4.2/3. Professor Sirai of
  1423.       Chukyo-University has also implemented cu-Prolog for the Apple
  1424.       Macintosh and DJ's GPP (80386/486 MS-DOS machine with the DOS
  1425.       extender). cu-Prolog is available free by anonymous ftp from
  1426.       ftp.icot.or.jp. For further information, send email to ifs@icot.or.jp,
  1427.       or write to ICOT Free Software Desk, Institute for New Generation
  1428.       Computer Technology, 21st Floor, Mita Kokusai Bldg., 4-28, Mita
  1429.       1-chome, Minato-ku, Tokyo 108, Japan, fax +81-3-3456-1618.
  1430.  
  1431.    ECLiPSe:
  1432.       ECLiPSe (ECRC Logic Programming System) combines the functionalities
  1433.       of several ECRC systems, including Sepia, MegaLog and CHIP.  ECLiPSe
  1434.       includes a Prolog compiler with extended functionality that is Quintus
  1435.       and SICStus compatible, a tightly connected database system based on
  1436.       the BANG file system, a CLP system containing several libraries with
  1437.       various types of constraint handling schemes, and an X11-based graphic
  1438.       system (KEGI).  The BANG database can store not only relations, but
  1439.       also any Prolog structures and programs. ECLiPSe also includes a
  1440.       profiler, user-definable syntax, metaterms as first-class citizens,
  1441.       coroutining, unlimited precision integer and rational numbers, and a
  1442.       library for generalized propagation Propia. ECLiPSe is available for a
  1443.       nominal fee of DM 300 (~$200) to all academic and government-sponsored
  1444.       organizations. It is distributed in binary form for Sun-3 and Sparc
  1445.       machines. Send orders or requests for further information to
  1446.       eclipse_request@ecrc.de or write to ECRC, Arabellastrasse 17,
  1447.       D-81925 Munich 81, Germany. The ECLiPSe documentation (ASCII and dvi) 
  1448.       and some shareware packages ported to ECliPSe are now available by
  1449.       anonymous ftp from ecrc.de:/pub/eclipse. To subscribe to the
  1450.       eclipse_users@ecrc.de mailing list, send mail to eclipse_request@ecrc.de.
  1451.  
  1452.    eLP:
  1453.       eLP (Ergo Lambda Prolog) is an interpreter written by Conal Elliott,
  1454.       Frank Pfenning and Dale Miller in Common Lisp and implements the core
  1455.       of lambda Prolog (higher-order hereditary Harrop formulas). It is
  1456.       embedded in a larger development environment called ESS (the Ergo
  1457.       Support System).  eLP implements all core language feature and offers
  1458.       a module system, I/O, some facilities for tracing, error handling,
  1459.       arithmetic, recursive top-levels, on-line documentation and a number
  1460.       of extended examples, including many programs from Amy Felty's and
  1461.       John Hannan's thesis.  It should run in Allegro Common Lisp, Lucid
  1462.       Common Lisp, Kyoto Common Lisp, CMU Common Lisp and Ibuki Common Lisp.
  1463.       The eLP implementation of lambda Prolog is no longer developed or
  1464.       maintained, but it is still available via anonymous ftp from
  1465.       ftp.cs.cmu.edu:/afs/cs.cmu.edu/project/ergo/export/ess/. The file
  1466.       ergolisp.tar.Z contains the Ergo project's extensions to Common Lisp,
  1467.       including some facilities for attributes and dealing with abstract
  1468.       syntax trees. The file sb.tar.Z contains the Ergo
  1469.       Parser/Unparser/Formatter generator and ab.tar.Z contains the Ergo
  1470.       Attribute Grammar facility. The file elp.tar.Z contains the Ergo
  1471.       implementation of lambda Prolog.  To customize grammars you need the
  1472.       sb.tar.Z file.  When you retrieve the system, please print, fill out,
  1473.       and send in a copy of the non-restrictive license you will find in the
  1474.       file LICENSE. To subscribe to the elp@cs.cmu.edu mailing list, send
  1475.       mail to elp-request@cs.cmu.edu. Bugs should be sent to
  1476.       elp-bugs@cs.cmu.edu.
  1477.  
  1478.    ESL Prolog-2 (PD Version):
  1479.       ai.uga.edu:ai.prolog/eslpdpro.zip [128.192.12.9]
  1480.  
  1481.       A prolog for MS-DOS systems with good performance. It deviates
  1482.       slightly from Edinburgh standard (strings "like this" are not lists
  1483.       of ASCII codes), but you can add a declaration that makes it fully 
  1484.       Edinburgh-compatible. (Add the line
  1485.        :- state(token_class,_,dec10).
  1486.       at the beginning of the program.) It is a more limited version
  1487.       of the interpreter from the Commercial Version (see [2-2] below).
  1488.       [Please note that ESL Prolog is NOT a UGA product, they just run
  1489.       the machine on which a copy is made available. Anyone with
  1490.       questions should contact ESL in Oxford, England (see [2-2] below).]
  1491.  
  1492.    Goedel:
  1493.       GOEDEL is intended to be a declarative successor to Prolog.  The
  1494.       main design aim of Goedel is to have functionality and expressiveness
  1495.       similar to Prolog, but to have greatly improved declarative semantics
  1496.       compared with Prolog.  This improved declarative semantics has
  1497.       substantial benefits for program construction, verification,
  1498.       debugging, transformation, and so on. Considerable emphasis is placed
  1499.       on Goedel's meta-logical facilities, since this is where Prolog is
  1500.       most deficient.  In particular, Goedel has declarative replacements
  1501.       for Prolog's var, nonvar, assert, and retract.  Goedel is a strongly
  1502.       typed language, its type system being based on many-sorted logic with
  1503.       parametric polymorphism. The release includes the Goedel system, a
  1504.       draft book on the language, a user manual, and 50 example programs.
  1505.       Goedel must be compiled in SICStus Prolog; a sparc executable is
  1506.       included in the distribution. Goedel is available by anonymous ftp
  1507.       from ftp.cs.kuleuven.ac.be:/pub/logic-prgm/goedel [134.58.41.2] and
  1508.       ftp.cs.bris.ac.uk:/goedel [137.222.102.102]. For more information,
  1509.       write to goedel@compsci.bristol.ac.uk. Please send an email message to
  1510.       this address (with your name, institution and address) to this address
  1511.       when you obtain the system. To subscribe to the
  1512.       goedel-users@compsci.bristol.ac.uk mailing list, send mail to 
  1513.         goedel-users-request@compsci.bristol.ac.uk
  1514.       indicating that you wish to join the Goedel discussion group.
  1515.  
  1516.    IC-Prolog II:
  1517.       src.doc.ic.ac.uk:/computing/programming/languages/prolog/icprolog/.
  1518.       The emulator is available at present only in Sun-4 binary form.
  1519.       Source code may be released later in the year when project
  1520.       finishes. 
  1521.  
  1522.       Produced by Imperial College, IC-Prolog II is a multi-threaded
  1523.       Prolog system.  It includes a Parlog sub-system, an interface to
  1524.       TCP primitives and "mailboxes", a high level communication
  1525.       system.  These enable distributed applications (such as
  1526.       client/server systems) to be written using logic programming.
  1527.       The distribution also includes a simple expert system shell and
  1528.       the preprocessor for the Prolog language extension L&O from the
  1529.       book "Logic & Objects" by Frank McCabe.  (The sources for the
  1530.       L&O extension is also available to LPA MacProlog users in the
  1531.       subdirectory 'lo'.)
  1532.  
  1533.       See "I.C. Prolog II : a Multi-threaded Prolog System" by Damian
  1534.       Chu and Keith Clark and also "IC Prolog II: a Language for
  1535.       Implementing Multi-Agent Systems" by Damian Chu.  Postscript
  1536.       copies of these two papers may be found in the subdirectory
  1537.       'papers'.
  1538.  
  1539.       Standalone versions of the Parlog system for Sun-3 and Sun-4
  1540.       can also be found in this directory.
  1541.  
  1542.       Contact Damian Chu <dac@doc.ic.ac.uk> for questions about IC
  1543.       Prolog II, and contact Zacharias Bobolakis <zb@doc.ic.ac.uk> for
  1544.       information about L&O.
  1545.  
  1546.    JB-Prolog:
  1547.       JB-Prolog 2.1 is a slim and powerfull prolog for the MacIntosh. Its key
  1548.       features are: Arbitrary long integers, fast interpreter only, source
  1549.       line debugger, user interface toolkit, persistent objects. It is
  1550.       available from the CMU AI repository as 
  1551.      ftp.cs.cmu.edu:user/ai/lang/prolog/impl/JBprologJBprolog2.1.sit.hqx
  1552.       For more information contact Jan Burse, jburse@clients.switch.ch,
  1553.       XLOG, Postbox 423, 8042 Zuerich, Switzerland.
  1554.  
  1555.    Prolog/Mali (Lambda-Prolog):
  1556.       Prolog/Mali is a compiler for the higher-order language Lambda-Prolog.
  1557.       Lambda-Prolog is an extension of Prolog defined by Miller (Miller,
  1558.       D.A., and Nadathur, G., "Higher-order logic programming", 3rd
  1559.       International Conference on Logic Programming, pages 448-462, London
  1560.       1986). It is an extension of Prolog where terms are simply typed
  1561.       lambda terms and clauses are higher order hereditary Harrop formulas.
  1562.       The main novelties are universal quantification on goals and
  1563.       implication.  Prolog/Mali is a complete system which includes a C
  1564.       translator, a linker, libraries, runtime, and documentation, and runs
  1565.       on UNIX.  It requires the MALI-V06 abstract memory package.
  1566.       Prolog/Mali is available by anonymous ftp from ftp.irisa.fr:pm/.
  1567.       Written by Pascal Brisset <brisset@irisa.fr> (or <brisset@ecrc.de>)
  1568.       and Olivier Ridoux (ridoux@irisa.fr). To be added to the mailing list,
  1569.       send mail to prolog-mali-request@irisa.fr. For more information, send
  1570.       mail to pm@irisa.fr.
  1571.  
  1572.    LIFE:
  1573.       LIFE (Logic, Inheritance, Functions, and Equations) is an experimental
  1574.       programming language with a powerful facility for structured type
  1575.       inheritance. It reconciles styles from functional programming, logic
  1576.       programming, and object-oriented programming. It subsumes the
  1577.       functionality of its precursor languages LOGIN and Le_Fun, and may be
  1578.       seen as an extension of Prolog. The syntax of Wild_LIFE has been kept
  1579.       as close as possible to that of the Edinburgh standard for Prolog.
  1580.       LIFE offers natively high-level abstraction facilities and convenient
  1581.       data and control structures particularly well-suited for AI
  1582.       programming. LIFE implements a constraint logic programming language
  1583.       with equality (unification) and entailment (matching) constraints over
  1584.       order-sorted feature terms. The interplay of unification and matching
  1585.       provides an implicit coroutining facility thanks to an automatic
  1586.       suspension mechanism. This allows interleaving interpretation of
  1587.       relational and functional expressions which specify structural
  1588.       dependencies on objects. The Wild_LIFE interpreter is the first
  1589.       implementation of the LIFE language available to the general public.
  1590.       It is a product of the Paradise project at Digital Equipment
  1591.       Corporation's Paris Research Laboratory (DEC PRL). Wild_LIFE runs on
  1592.       DECstations (Ultrix), SparcStations and RS/6000 systems and should 
  1593.       be portable to other Unix workstations. It is implemented in C,
  1594.       and includes an interface to X Windows. Wild_LIFE is available
  1595.       by anonymous ftp from gatekeeper.dec.com:pub/plan as the file
  1596.       Life.tar.Z. To be added to the mailing list (life-users@prl.dec.com),
  1597.       send mail to life-request@prl.dec.com. Send bug reports to
  1598.       life-bugs@prl.dec.com. 
  1599.  
  1600.    Lolli:
  1601.       Lolli is an interpreter for logic programming based on linear logic
  1602.       principles. Lolli, named for the linear logic implication operator
  1603.       "-o" called lollipop, is a full implementation of the language
  1604.       described in the paper "Logic Programming in a Fragment of
  1605.       Intuitionistic Linear Logic" (Josh Hodas & Dale Miller, to appear in
  1606.       Information and Computation), though it differs a bit in syntax, and
  1607.       has several built-in extra-logical predicates and operators. To
  1608.       retrieve a copy of the Lolli system, ftp (anonymously) to
  1609.       ftp.cis.upenn.edu and retrieve the file pub/Lolli/Lolli-07.tar.Z. This
  1610.       distribution includes full ML source, along with a Makefile, as well
  1611.       as several background papers and a collection of example programs. For
  1612.       those who do not have SML-NJ at their site, the authors hope to
  1613.       provide pre-built binaries for a variety of architectures. These
  1614.       binaries can be found on ftp.cis.upenn.edu in the directory
  1615.       pub/Lolli/binaries. At present Sparc and NeXT binaries are available.
  1616.       If you compile lolli on a new architecture, please contact Josh Hodas
  1617.       at <hodas@saul.cis.upenn.edu> so that he can make your binary
  1618.       available.
  1619.  
  1620.    NCL:
  1621.       NCL (Net-Clause Language) is aimed at describing distributed
  1622.       computation models using term unification as a basic processing and
  1623.       control mechanism. It is embedded in standard Prolog and comprises two
  1624.       parts -- net-clauses and data-driven rules, which can communicate each
  1625.       to other and to standard Prolog programs.  A net-clause is a special
  1626.       domain in the database defining a network of nodes and links. The
  1627.       nodes are represented by Prolog compound terms. The variables
  1628.       occurring within the nodes are global logical variables, which can be
  1629.       shared within the scope of the net-clause thus playing the role of
  1630.       network links.  Two control mechanisms are implemented: a spreading
  1631.       activation scheme similar to the connectionist spreading activation
  1632.       and to the marker passing mechanism in SN (in logic programming it is
  1633.       seen as a restricted forward chaining) and a default mechanism based
  1634.       on using variables to propagate terms without being bound to them,
  1635.       thus implementing the non-monotonicity of default reasoning.  The
  1636.       Data-driven Rules implement a full scale forward chaining for Horn
  1637.       clauses.  They simulate a data-driven parallel computation, where each
  1638.       rule is a process (in contrast to the traditional parallel logic
  1639.       programming where each goal is a process). The NCL/Prolog interpreter
  1640.       along with a reference manual and a set of examples is available by
  1641.       anonymous ftp at ai.uga.edu:ai.misc/ncl.tar.Z. For more information
  1642.       contact Zdravko Markov, Institute of Informatics, Bulgarian Academy of
  1643.       Sciences Acad.G.Bonchev Street, Block 29A, 1113 Sofia, Bulgaria,
  1644.       <markov@iinf.bg>.
  1645.  
  1646.    Open Prolog: 
  1647.       Open Prolog (OP) is a Prolog interpreter for the Apple Macintosh.
  1648.  
  1649.       It follows the so-called 'Edinburgh' syntax and supports most standard
  1650.       Prolog features, including Definite Clause Grammars.
  1651.       Extra predicates can be added via drop-in external predicates, similar to
  1652.       Hypercard's XCMDs.
  1653.  
  1654.       OP will work in any Macintosh from a Plus upwards, and is now 
  1655.       32-bit clean.
  1656.  
  1657.       OP's home site is grattan.cs.tcd.ie [134.226.32.15] in 
  1658.        languages/open-prolog
  1659.       It is also available from other sites, such as:
  1660.       sumex-aim.stanford.edu (info-mac)
  1661.          mac.archive.umich.edu [141.211.165.41]
  1662.          nexus.yorku.ca:/pub/prolog/  [130.63.9.1] 
  1663.          aisun1.ai.uga.edu [128.192.12.9]
  1664.          /afs/umich.edu/group/itd/archive/mac/development/languages 
  1665.  
  1666.       For more information, write to Michael Brady, Computer Science
  1667.       Department, Trinity College, Dublin 2, IRELAND, send email to
  1668.       brady@cs.tcd.ie, call +353 1 7021786, or fax +353 1 6772204 (5 hours
  1669.       ahead of East Coast US time).
  1670.  
  1671.  
  1672.    PCN:
  1673.       PCN (Program Composition Notation) is not a logic programming
  1674.       language, but it has similarities to Strand and other concurrent logic
  1675.       programming languages. PCN is a parallel programming system that
  1676.       provides a simple language for specifying concurrent algorithms,
  1677.       interfaces to Fortran and C, a portable toolkit that allows
  1678.       applications to be developed on a workstation or small parallel
  1679.       computer and run unchanged on supercomputers, and integrated debugging
  1680.       and performance analysis tools. PCN includes a runtime system,
  1681.       compiler, linker, a set of standard libraries, virtual topology tools,
  1682.       a symbolic debugger (PDB), an execution profiler (Gauge), and a trace
  1683.       analysis tool (Upshot). PCN was developed at Argonne National
  1684.       Laboratory and the California Institute of Technology.  PCN runs on
  1685.       Sun4, NeXT, IBM RS/6000, SGI Iris, Intel iPSC/860, Intel Touchstone
  1686.       DELTA, Sequent Symmetry running Dynix (not PTX), and should be easy to
  1687.       port to other architectures. PCN is in the public domain and can be
  1688.       obtained by anonymous ftp from
  1689.      info.mcs.anl.gov:/pub/pcn/pcn_v2.0.tar.Z 
  1690.       The distribution includes a user's guide containing a tutorial and
  1691.       reference material. For further information on PCN, please send email to
  1692.       <pcn@mcs.anl.gov> or contact Ian Foster <foster@mcs.anl.gov>
  1693.       708-252-4619 or Steve Tuecke <tuecke@mcs.anl.gov> 708-252-8711.
  1694.  
  1695.  
  1696.    PD Prolog 19: 
  1697.       wuarchive.wustl.edu:/mirrors/msdos/prolog/prolog19.arc (IBM PC)
  1698.       aisun1.ai.uga.edu (128.192.12.9)
  1699.  
  1700.    PDSS KL1:
  1701.       PDSS KL1 is an implementation of FGHC, a concurrent logic programming
  1702.       language developed at ICOT in Japan. Runs on Suns, HPs, DECs, and the
  1703.       Sequent Symmetry. Available free by anonymous ftp from ftp.icot.or.jp.
  1704.       A representative paper on the language is Kazunori Ueda and Takashi
  1705.       Chikayama, "Design of the Kernel Language for the Parallel Inference
  1706.       Machine", The Computer Journal, December, 1990. For more information,
  1707.       send email to ifs@icot.or.jp or write to ICOT Free Software Desk,
  1708.       Institute for New Generation Computer Technology, 21st Floor, Mita
  1709.       Kokusai Bldg., 4-28, Mita 1-chome, Minato-ku, Tokyo 108, Japan, fax
  1710.       +81-3-3456-1618.
  1711.  
  1712.    Portable Prolog System:
  1713.       Portable Prolog System is an interpreter from the University of York.
  1714.       Runs on any system having a Pascal compiler. For more information,
  1715.       write to University of York, Software Distribution Officer, Department
  1716.       of Computer Science, University of York, York, YO1 5DD, UK, call +44
  1717.       (904) 59861, or fax +44 (904) 433744.
  1718.  
  1719.    ROLOG: 
  1720.       cs.uiuc.edu:/pub/ROLOG
  1721.  
  1722.       Parallel PROLOG compiler with a reduce-OR process model.
  1723.  
  1724.    SB-Prolog:
  1725.       cs.arizona.edu:/sbprolog
  1726.       sbcs.sunysb.edu:/pub/sbprolog
  1727.  
  1728.       Stony Brook Prolog runs on Sun4, Pyramid-98x, DEC3100, SGI Iris,
  1729.       Amiga, and MS-DOS machines. Contact warren@sbcs.sunysb.edu for more
  1730.       information. Two versions are available: version 2.5 is an
  1731.       interpreter for Amigas and version 3.1 is an interpreter and compiler
  1732.       for Unix and MSDOS/386.
  1733.  
  1734.       SB-Hilog runs in SB-Prolog and Quintus Prolog and is available on
  1735.      sbcs.sunysb.edu:/pub/hilog/
  1736.  
  1737.       src.doc.ic.ac.uk [146.169.3.7] contains SBProlog 3.1 executables for
  1738.       MS-DOS/386 in languages/sbprolog, filename sbpmsdos.zip.
  1739.  
  1740.       nic.funet.fi contains SBProlog executables for Amiga in
  1741.       /pub/amiga/fish/disks100-199/ff140. 
  1742.  
  1743.       Modular SB-Prolog (= SB-Prolog version 3.1 plus modules) is available
  1744.       by anonymous FTP from ftp.dcs.ed.ac.uk (129.215.160.5), as the file
  1745.       pub/dts/mod-prolog.tar.Z. Includes interpreter for SPARC. For more
  1746.       information, write to Brian Paxton <mprolog@dcs.ed.ac.uk>.
  1747.  
  1748.       [NOTE: SB-Prolog is superseded by XSB (see below) and hence is
  1749.        no longer supported by Stony Brook or the University of Arizona.
  1750.        The only reason to continue using SB-Prolog is for DOS, since
  1751.        XSB does not run under DOS and there are currently no plans to
  1752.        port it to DOS.]
  1753.  
  1754.    SLG:
  1755.       The SLG system is a meta interpreter implementation of the
  1756.       well-founded semantics of normal logic programs [Van Gelder, Ross, and
  1757.       Schlipf, JACM, Vol. 38, July 1991]. It is developed by Weidong Chen
  1758.       and David Scott Warren, and is available free by anonymous ftp from
  1759.       Southern Methodist University or SUNY at Stony Brook
  1760.      seas.smu.edu:pub
  1761.      sbcs.sunysb.edu:pub/XSB/
  1762.       as the file slg.tar.gz. The SLG system is written in Prolog and
  1763.       allows integration of regular Prolog execution with SLG resolution.
  1764.       SLG resolution is a method for goal-oriented query evaluation of
  1765.       normal logic programs under the well-founded semantics [Chen & Warren,
  1766.       PODS'93]. It handles both positive and negative loops, and terminates
  1767.       for all programs with the so-called bounded-term-size property. For
  1768.       function-free programs, polynomial data complexity is guaranteed.
  1769.       Comments, requests, and bug reports should be sent to Weidong Chen,
  1770.       <wchen@seas.smu.edu>, Computer Science and Engineering, Southern
  1771.       Methodist University, Dallas, Texas 75275-0122, phone 214-768-3097, or
  1772.       David Scott Warren, <warren@cs.sunysb.edu>, Department of Computer
  1773.       Science, SUNY at Stony Brook, Stony Brook, NY 11794-4400, phone
  1774.       516-632-8454.
  1775.  
  1776.    SWI Prolog:
  1777.       swi.psy.uva.nl:pub/SWI-Prolog/pl-1.6.12.tar.Z [192.42.96.1] (Main source)
  1778.       [The patch level (last digit) is regularly updated and diffs between
  1779.       patch levels are located in the same directory.]
  1780.       mpii02999.ag2.mpi-sb.mpg.de:pub/tools/SWI/ [139.19.20.250] (OS/2)
  1781.  
  1782.       rs3.hrz.th-darmstadt.de  [130.83.55.75]
  1783.       ftp.th-darmstadt.de:pub/programming/languages/prolog [130.83.22.253]
  1784.  
  1785.       SWI-Prolog includes a fast compiler, a profiler, C interface, a
  1786.       module system, libraries, and dynamic loading. 
  1787.       Runs on Atari ST, Gould PN, NeXT, HP, IBM Linux, DEC MIPS, IBM
  1788.       PS/2 AIX, OS/2, IBM RS/6000, Sun3, Sun4, Sparc, and Vax.
  1789.       Written by Jan Wielemaker, SWI, University of Amsterdam,
  1790.       Roetersstraat 15, 1018 WB     Amsterdam, The Netherlands,
  1791.       <jan@swi.psy.uva.nl>. Ported to OS/2 by Andreas Toenne, 
  1792.       <atoenne@mpi-sb.mpg.de>. The mailing list is prolog@swi.psy.uva.nl.
  1793.       To be added to the list, send mail to prolog-request@swi.psy.uva.nl.
  1794.  
  1795.  
  1796.    Toy Prolog:
  1797.       An interpreter written in Pascal. About 3500 lines of source. Free with
  1798.       "Prolog for Programmers" by Kluzniak and Szpakowicz (Academic Press
  1799.       1985). Toy Prolog has been ported to the Atari ST by Jens
  1800.       Kilian <jensk@hpbeo82.bbn.hp.com>.
  1801.  
  1802.    Tricia:
  1803.       Tricia is a free Prolog high-level emulator with interpreter available 
  1804.       by email from Uppsala University. Runs on Macintosh, Sun3, Sun4, Apollo
  1805.       DN-3500/4500/5500 (OS version 10.*) and HP-730's. For more information,
  1806.       write to Uppsala University, Tricia project, Computing Science
  1807.       Department, Box 520, S-751 20 UPPSALA, Sweden, fax +46 18 521270, or
  1808.       email to tricia-request@csd.uu.se or jonas@csd.uu.se. It is
  1809.       available by anonymous ftp from
  1810.      ftp.csd.uu.se:pub/Tricia/
  1811.       A copy is also available in the directory
  1812.      /afs/umich.edu/group/itd/archive/mac/development/languages
  1813.       if your site runs the Andrew File System, or by anonymous ftp from
  1814.       mac.archive.umich.edu.
  1815.  
  1816.    XSB:
  1817.       XSB is a Prolog-based Logic Programming System that extends the
  1818.       standard functionality of Prolog with an implementation of OLDT
  1819.       (tabling) and HiLog terms. It is a descendent of PSB-Prolog and
  1820.       SB-Prolog. OLDT resolution is useful for recursive query computation,
  1821.       allowing programs to terminate correctly in many cases where Prolog
  1822.       does not. HiLog supports a type of higher-order programming in which
  1823.       predicate symbols can be variable or structured.  This allows
  1824.       unification to be performed on the predicate symbols themselves in
  1825.       addition to the arguments of the predicates. XSB includes an
  1826.       optimizing compiler, C interface, a module system, list processing
  1827.       libraries, and dynamic loading.  XSB is a descendant of SB-Prolog.
  1828.       XSB runs on Sun3, Sun4, 386/486 PCs (Linux and 386 BSD), SGI machines
  1829.       (IRIX), HP 300/400 series (HP-UX) and NeXT, and can be compiled using
  1830.       either the GNU C compiler or the Sun C compiler. Porting XSB to any
  1831.       32-bit machine running Unix should be straightforward.  THIS IS A BETA
  1832.       RELEASE. XSB is available by anonymous ftp from
  1833.       sbcs.sunysb.edu:pub/XSB/XSB.tar.Z [130.245.1.15]. For further
  1834.       information, write to XSB Research Group, Computer Science Department,
  1835.       SUNY at Stony Brook, Stony Brook, NY 11794, or send email to
  1836.       xsb-contact@cs.sunysb.edu.
  1837.  
  1838. ----------------------------------------------------------------
  1839. Subject: [2-2] Commercial Prolog Implementations
  1840.  
  1841. The Prolog Vendors' Group may be contacted by email via the Secretary,
  1842. Al Roth, at <alroth@cix.compulink.co.uk>.
  1843.  
  1844. Index:
  1845.  
  1846.    Atari/Amiga:
  1847.     SPIES YAP
  1848.  
  1849.    Macintosh: 
  1850.     AAIS Prolog
  1851.     ALS Prolog
  1852.     IF/Prolog
  1853.     IQSOFT MProlog
  1854.     LPA Prolog
  1855.     POPLOG
  1856.     Prolog III
  1857.     Quintus Prolog
  1858.     SPIES YAP
  1859.  
  1860.    IBM PC: 
  1861.     ALS Prolog
  1862.     Arity Prolog
  1863.     CIM-Prolog
  1864.     Coder's Prolog
  1865.     Cogent Prolog 
  1866.     Delphia Prolog
  1867.     ESL Prolog-2 (Commercial Version)
  1868.     IF/Prolog
  1869.     IQSOFT MProlog
  1870.     LPA Prolog
  1871.     OU Prolog
  1872.     PDC Prolog
  1873.     Prolog III
  1874.     Quintec Prolog
  1875.     Quintus Prolog
  1876.  
  1877.    Unix: 
  1878.     AIAI Edinburgh Prolog
  1879.     ALS Prolog
  1880.     BIM Prolog
  1881.     CIM-Prolog
  1882.     Coder's Prolog
  1883.     Delphia Prolog
  1884.     EDCAAD C-Prolog
  1885.     ESL Prolog-2 (Commercial Version)
  1886.     IF/Prolog
  1887.     IQSOFT MProlog
  1888.     MU-Prolog, NU-Prolog
  1889.     POPLOG
  1890.     Prolog III
  1891.     Quintec Prolog
  1892.     Quintus Prolog
  1893.     SICStus Prolog
  1894.     SNI Prolog
  1895.     SPIES YAP
  1896.  
  1897. Many of the following vendors offer educational discounts to
  1898. universities. Be sure to ask for current pricing information.
  1899.  
  1900. Commercial Prolog Implementations:
  1901.  
  1902.    AAIS Prolog is an Edinburgh-standard compiler and interpreter that runs on
  1903.    the Apple Macintosh and costs $298. Write to Advanced AI Systems,
  1904.    Inc., PO Box 39-0360, Mountain View, CA 94039-0360, call 415-948-8658,
  1905.    fax 415-948-2486, or email aais@applelink.apple.com. Reviewed in
  1906.    AI Expert, Feburary 1991.
  1907.  
  1908.    AIAI Edinburgh Prolog is a high level prolog emulator that runs on
  1909.    Acorn R140 (RISC iX), DG AViiON (DG/VX 4.1), Vax (Berkeley Unix, VMS),
  1910.    Gould Encore (Unix), HP 9000/300 (HP-UX), MIPS RISC (RiscOS), Sequent
  1911.    (DYNIX V3), Sun 2,3,4 (SunOS-3,4). For more information, write to
  1912.    AIAI, AI Applications Institute, Software Secretary, University of
  1913.    Edinburgh, 80 South Bridge, Edinburgh EH1 1HN, UK, call +44 (31) 650
  1914.    2734, fax +44 (31) 226 2730, or send email to AIAI@ed.ac.uk.
  1915.  
  1916.    ALS Prolog runs on 80386 machines, including DOS ($799), Sun 386i, Xenix,
  1917.    Apple Macintosh ($499), System V Unix (Microport), Sun3, Sun4, Sparc,
  1918.    Aviion, NeXT, VAX and Delta88. It is available from Applied Logic
  1919.    Systems, Inc., PO Box 90, University Station, Syracuse, NY 13210-0090,
  1920.    phone 315-471-3900, fax 315-471-2606, or email info@als.com or
  1921.    support@als.com. Send a message to info@als.com with subject line "HELP"
  1922.    to get a general information file in reply.
  1923.  
  1924.    Arity Prolog is an emulator with interpreter and runs on DOS ($650),
  1925.    OS/2 ($1k), Windows (extra $350), OS/2 V.2, and Windows-NT. (Note that
  1926.    Windows support means that you can write Prolog programs that
  1927.    manipulate Windows. The Windows version of Arity Prolog does not
  1928.    itself run under MS Windows.) For more information, write to Arity
  1929.    Corporation, Damonmill Square, Concord, MA 01742, call 800-722-7489
  1930.    (508-371-1243), fax 508-371-1487, or send email to
  1931.    73677.2614@compuserve.com or Paul G. Weiss <weiss@lcs.mit.edu>.
  1932.  
  1933.    Prolog by BIM is a prolog compiler that runs on Sun4, Sparcs and
  1934.    RS/6000. It includes Carmen, a user-interface generator for XView
  1935.    and SunView and interfaces to various databases and windowing
  1936.    packages. For more information, contact BIM Systems, Inc., 11111
  1937.    Santa Monica Boulevard, Suite 650, Los Angeles, CA 90025, call
  1938.    310-445-1500, fax to 310-445-1515, or email to prolog@bim.com.
  1939.    Outside North-America write to BIM s.a./n.v., Kwikstraat 4, B-3078
  1940.    Everberg, Belgium, call +32 2 759 59 25, fax to +32 2 759 92 09 or
  1941.    email to prolog@sunbim.be (Kathleen Pierco). Earlier version reviewed
  1942.    in AI Expert, January 1991.
  1943.  
  1944.    CIM-Prolog is a high-level emulator with interpreter for Apollo Domain
  1945.    and Sun. Also standard Prolog for Apollo Domain, IBM PC/AT, INMOS
  1946.    transputer, and Sun. A parallel version is also available.
  1947.    For more information, write to Creative Soft GmbH, Turnstrasse 10, D-8510
  1948.    Fuerth, Germany, call +49 911 7499214, or fax +49 911 747756.
  1949.  
  1950.    Coder's Prolog 2.0 is a Prolog Interpreter from Austin Code Works. Works
  1951.    on any system with a C compiler (it is designed for use with C programs).
  1952.    For more information, write to Austin Code Works, 11100 Leafwood Lane,
  1953.    Austin, TX 78750-3587, call 512-258-0785, fax 512-258-1342, or send email
  1954.    to info@acw.com.
  1955.  
  1956.    Cogent Prolog is an Edinburgh-standard compiler and interpreter.
  1957.    Compiled and interpreted code may be intermixed in the same program
  1958.    (for ease of debugging). The full system includes a debugger, definite
  1959.    clause grammar support, full-screen shell, standard listener, support
  1960.    for 16-bit and 32-bit protected mode, linker, .exe generator and
  1961.    royalty-free distributable runtime ($248). Compiler & interpreter
  1962.    without linker and distributable runtime ($149).  Interpreter alone
  1963.    ($49).  Also available is an interactive tutorial, the Active Prolog
  1964.    Tutor ($75) and full source code for expert system shell prototypes
  1965.    for forward/backward chaining, frames, Rete-network and more ($82).
  1966.    All are IBM-PC based. For more info or tech support, email
  1967.    amziod@world.std.com, or contact Amziod, 40 Samuel Prescott Dr., Stow,
  1968.    MA 01775. 508-897-7332 (FAX 508-897-2784).
  1969.  
  1970.    Delphia Prolog is an Edinburgh-standard compiler and interpreter that
  1971.    runs on Sun3, Sun4, Sparc, RS/6000, Apollo, HP9000/300, Unigraph 68xxx,
  1972.    386/486 (SCO Unix), DecStation (Ultrix), Sony NEWS (Unix), VAX (VMS,
  1973.    Ultrix), uVax (Ultrix), VaxStation (Ultrix). Write to Delphia, 27 Avenue
  1974.    de la Republique, 38170 Seyssinet, France, call 33-76-26-68-94 or fax
  1975.    33-76-26-52-27. An earlier version was reviewed in AI Expert, January 1991
  1976.    and Feburary 1991.
  1977.  
  1978.    ECRC SEPIA. See ECLiPSe. SEPIA is no longer delivered as a
  1979.    stand-alone system, but as a part of ECLiPSe.
  1980.  
  1981.    EDCAAD CProlog is a prolog interpreter for Sun (SunOS), VAX (Ultrix,
  1982.    VMS), Apollo, and 68000 (Unix). For more information, write to EDCAAD,
  1983.    Department of Architecture, Edinburgh University, 20 Chambers St.,
  1984.    Edinburgh EH1 1JZ, UK, call +44 (31) 650 1000, fax +44 (31) 667 0141,
  1985.    or send email to chris@caad.ed.ac.uk.
  1986.  
  1987.    ESL Prolog-2 (Commercial Version), is a high-level emulator with
  1988.    interpreter and compiler for Sun3, Sun4, HP9000 (Unix), RS/6000
  1989.    (Unix), VAX (VMS), IBM PC (MS-DOS, Windows 3.0/3.1), and 386. It is an
  1990.    Edinburgh standard prolog with a number of extensions. The windows
  1991.    version includes BIPs for programming windows graphics and dialogues.
  1992.    For more information, write to Expert Systems Limited (ESL), Attn:
  1993.    Nick Henfrey, The Magdalen Centre, Oxford Science Park, Oxford, OX4
  1994.    4GA, England, call +44-865-784474, fax +44-856-784475, or email
  1995.    <sales@expert.demon.co.uk>. 
  1996.  
  1997.    HyperProlog. See Delphia Prolog.
  1998.  
  1999.    IBM PROLOG for AIX/6000 (PFA) is a high performance implementation of
  2000.    the PROLOG language, combined with a powerful programming environment,
  2001.    especially designed for the IBM RISC System/6000 under AIX. PFA was
  2002.    developed by BIM as an adaptation of ProLog by BIM for the IBM RISC
  2003.    System/6000 under AIX. It was selected by IBM Europe as their
  2004.    official PROLOG implementation for the RISC System/6000 (Program
  2005.    Number 5776-FAH). For more information: In North-America contact BIM
  2006.    systems, 11111 Santa Monica Bld, call 310-445-1500, fax to
  2007.    +310-445-1515; in Europe contact your local IBM representative.
  2008.    Elsewhere contact BIM, Kwikstraat 4, B-3078 Everberg, Belgium, call
  2009.    +32 2 759 59 25, or fax +32 2 759 92 09, or email prolog@sunbim.be.
  2010.  
  2011.    IF/Prolog is a Prolog interpreter and compiler with X-window and
  2012.    OSF/Motif development environment, bidirectional C interface, on-line
  2013.    hypertext manual, and X-window, OSF/Motif interfaces and various SQl
  2014.    interfaces. It runs on Apollo, Aviion 300, Macintosh (A/UX), microVAX
  2015.    2000 (Ultrix), Vax (Ultrix, VMS), VaxStation (Ultrix), DEC Alpha
  2016.    (OSF/1, VMS), HP9000, Sun3, Sun4, Sparc, UTS, AIX/370, IBM RS/6000,
  2017.    Decstation (Ultrix, OSF/1), Sequent S16, Silicon Graphics, Sony News
  2018.    (Unix), Motorola, Nixdorf, Interactive Unix, SCO UNIX, DOS-based 386
  2019.    PCs, and Windows 3.0/3.1. For more information, write to American
  2020.    InterFace Computer, Inc., One Westlake Plaza, 1705 Capital of Texas
  2021.    Highway South, Suite 200, Austin, TX 78746, call 512-327-5344, or fax
  2022.    512-327-5176, or e-mail ifc@cactus.org. European Customers may write
  2023.    to InterFace Computer GmbH, Garmischer Strasse 4, D-8000 Muenchen 2,
  2024.    Germany, call +49 89 5108655, fax +49 89 5108628, or email
  2025.    vp@IFComputer.de. Reviewed in AI Expert January 1991.
  2026.  
  2027.    ILOG SOLVER (formerly called PECOS) is a C++ library that implements a 
  2028.    CLP (Constraint Logic Programming) instance known as finite domains.
  2029.    This library includes:
  2030.      - Prolog control structures:  non determinism, choice points,
  2031.        backtracking and cut. Modification of user-defined objects can be
  2032.        trailed so that their state is restored when a failure occurs.
  2033.      - Finite domain logical variables, and associated constraints.
  2034.      - Finite sets logical variables and associated constraints.
  2035.      - Interval floating point variables, and associated
  2036.        constraints, analoguous to what is found in BNR Prolog.
  2037.      - Predefined search and optimisation algorithms. 
  2038.    However, ILOG SOLVER does not uses unification for passing arguments,
  2039.    which enables a smooth integration with C++. For further information,
  2040.    contact info@ilog.com or levy@ilog.fr, write to Bruno Levy,
  2041.    Pecos Marketing Manager, ILOG SA, Direction Commerciale, 12 Avenue
  2042.    Raspail, 94251 Gentilly Cedex, call (33 1) 47-40-80-00, or 
  2043.    fax (33 1) 47-40-04-44. 
  2044.  
  2045.    IQSOFT MProlog is a high-level emulator with interpreter for Unix,
  2046.    Macintosh and IBM PC. Runs on Vax (Unix 4.2 BSD), 68000-based machines
  2047.    (Unix), Tektronix 4404, HP3000, and Siemens 1. For more information,
  2048.    write to IQSOFT, SZKI Intelligent Software Ltd., Iskola u. 10.,
  2049.    Budapest, H-1011, Hungary, call +36 1 201 6764, fax +36 1 201 7125, or
  2050.    send email to szeredi@iqsoft.hu.
  2051.  
  2052.    LPA Prolog is a prolog compiler for IBM PCs (DOS, Windows, 386) and Apple
  2053.    Macintosh. LPA Prolog ++ is an object-oriented programming system
  2054.    based on Prolog. Write to Logic Programming Associates, Ltd., Studio
  2055.    4 Royal Victoria Patriotic Building, Trinity Road, London SW18 3SX,
  2056.    England, call +44 081-871-2016, fax +44 081-874-0449, or email
  2057.    lpa@cix.compulink.co.uk, UK0049@applelink.apple.com (Clive Spenser), 
  2058.    or 100135.134@compuserve.com. In the US call 800-949-7567.
  2059.    LPA products are distributed in North America by Quintus under the
  2060.    Quintus name.
  2061.  
  2062.    Maxon Prolog is available for the Atari ST from the German magazine
  2063.    'ST-Computer' for 298 DM. Tel: 010 49 61 96 481811.
  2064.  
  2065.    MU-Prolog, NU-Prolog are prolog interpreters from the University of 
  2066.    Melbourne. Source licences are available for educational institutions.
  2067.    Implemented in C for BSD Unix. Currently running on Sun3, Sun4, Vax, 
  2068.    Elxsi, Encore, and SGI. For more information, write to University of 
  2069.    Melbourne, MU-Prolog Distribution, Department of Computer Science, 
  2070.    Parkville, Victoria 3052, Australia, call +61 3 344 7270, or send email to
  2071.    lee@cs.mu.oz.au or jws@cs.mu.oz.au.
  2072.  
  2073.    OU Prolog is a prolog interpreter from Open University for IBM PC
  2074.    (MS-DOS). Includes video, books. Ask for item PD622 and quote
  2075.    reference SA69. For more information, write to Open University,
  2076.    Learning Materials Sales Office, PO Box 188, Milton Keynes MK7 6DH, UK.
  2077.  
  2078.    PDC Prolog runs on IBM PCs (DOS, OS/2, Windows and SCO Unix). Formerly
  2079.    known as Turbo Prolog from Borland. Includes a native code compiler
  2080.    but is incompatible with most other prologs. Its variables are
  2081.    strongly typed, unlike most other prologs. For more information, write
  2082.    Prolog Development Center, 568 14th Street, Atlanta, GA 30318, call
  2083.    800-762-2710, (404-873-1366), fax 404-872-5243 or email
  2084.    pdc-request@pdc.dk (general information), sales@pdc.dk (sales),
  2085.    support@pdc.dk (tech support). A BBS is run at 404-872-5358. European
  2086.    customers may write to Prolog Development Center, A/S, Hj Holst Vej
  2087.    5A, DK-2605 Broendby, Denmark, call +45 36 72 10 22, or fax +45 36 72
  2088.    02 69. Reviewed in AI Expert January 1991.
  2089.  
  2090.    POPLOG is a high-level prolog emulator with interpreter. The POPLOG
  2091.    environment integrates four AI programming languages in one
  2092.    environment: Lisp, Prolog, ML and POP11. POPLOG can also load in C and
  2093.    Fortran binaries. Runs on VAX (Ultrix, VMS), VAXStation (Ultrix),
  2094.    DECStation (Ultrix), Sun 3,4, Sparc, Solbourne, HP Apollo 9000/400,
  2095.    Sparc (HP-UX), MIPS (RISCOS), Sequent Symmetry (Dynix), Apple
  2096.    Macintosh (AUX), SONY News (News-OS), and Silicon Graphics Iris
  2097.    (Irix). The academic version from Sussex University. For more
  2098.    information, write to POPLOG, Sussex University, Poplog Manager,
  2099.    School of Cognitive Sciences, Falmer, Brighton BN1 9QN, UK, call +44
  2100.    273 608367, fax +44 273 678188, or send email to popsales@cogs.sussex.ac.uk
  2101.    or popmanager@cogs.sussex.ac.uk. The commercial version is available
  2102.    from Integral Solutions Ltd as Integral Poplog and Pop++. For more
  2103.    information, write to Integral Solutions Ltd, Unit 3, 23 Campbell
  2104.    Court, Bramley, Basingstoke Hampshire RG26 5EG, UK, call +44 256 88 20
  2105.    28, fax +44 256 88 21 82, or send email to isl@integ.uucp or
  2106.    isl@integ.co.uk. The North American retailer is Computable
  2107.    Functions Inc. For more informatin, write to Computable Functions Inc.,
  2108.    35 S. Orchard Drive, Amherst, MA 01002, call 413-545-3140, or fax
  2109.    413-545-3140. Contact Robin Popplestone, pop@cs.umass.edu, for info
  2110.    on a new book on Pop-11.
  2111.  
  2112.    Prolog III integrates constraint programming with Prolog. It runs on
  2113.    Apple Macintosh, IBM PC (386, MS-DOS), Next, Sun3, Sun4, Sparc, HP9000,
  2114.    Apollo, RS/6000, Bull DPX, Masscomp (Unix), Vax (Ultrix, VMS),
  2115.    DecStation and MicroVAX. For more information, write to PrologIA,
  2116.    Parc Technologique de Luminy, Case 919, 13288 Marseilles cedex 09, France,
  2117.    call 33-91-26-86-36, fax 33-91-41-96-37, or send email to
  2118.    prolia@dcftlx.das.net or prolia@tlxf.geomail.org. The US point of contact
  2119.    for Prolog III by PrologIA is BIM Systems, Inc. 
  2120.  
  2121.    Prolog-86 is available from Solution Systems Inc. For more
  2122.    information, write to Solution Systems Inc., 335-D Washington Street,
  2123.    Norwell, MA 02061, call 617-337-6963, or fax 617-431-8419.
  2124.  
  2125.    PTC is a portable Prolog compiler based around an optimized Prolog to
  2126.    ANSI C compiler.  It runs on Sun, SGI, IBM (Unix), and HP.  PTC
  2127.    includes an integrated compiler/interpreter, project-file-based
  2128.    compilation, a Motif user interface, editor, debugger, online help,
  2129.    and support for C modules. It costs $1,495 for the development
  2130.    environment and $795 for each additional runtime library.  For more
  2131.    information, write to Paralogic Inc., 115 Research Drive, Bethlehem,
  2132.    PA 18015, call 215-861-6960, fax 215-861-8247 or email
  2133.    plogic@lehi3b15.csee.Lehigh.edu.
  2134.  
  2135.    Quintec Prolog is a high-level emulator with interpreter for IBM PC
  2136.    (MS-DOS), Vax, VAXstation (Ultrix, VMS), Decstation (Ultrix), and
  2137.    Sparc (SunOS4.0). For more information, write to Quintec Prolog,
  2138.    Quintec Systems Ltd., Midland House, West Way, Botley, Oxford OS2 0PL,
  2139.    UK, call +44 865 791565, or fax +44 865 791595.
  2140.  
  2141.    Quintus Prolog is a low level emulator that runs on Unix (Sparc, sun2,
  2142.    sun3, sun4, 386i, VAX (Ultrix, VMS), uVAX (Ultrix), HP9000, Apollo,
  2143.    DecStation, IBM RT, Sequent S/27, S/81, IBM PS/2 (AIX), Intel 80386
  2144.    (Unix V.3), Intergraph, Solbourne, RS/6000, and MIPS), IBM PC (DOS,
  2145.    Windows), and Macintosh. Includes a cross-referencing facility. For
  2146.    more information, contact Quintus Corporation, 2100 Geng Road, Palo
  2147.    Alto, CA 94303, call 1-800-542-1283 (415-813-3800), fax 415-494-7608,
  2148.    or email sales@quintus.com (sales), teksup@quintus.com (tech support).
  2149.    To be added to the users group mailing list, send mail to
  2150.    quintus-users-request@quintus.com. Version 3.0 reviewed in AI Expert
  2151.    January 1991 and February 1991 and IEEE Expert April 1991. LPA
  2152.    products are distributed in North America by Quintus under the Quintus name.
  2153.  
  2154.    SICStus Prolog is a Unix prolog by SICS. It is portable to most UNIX
  2155.    machines (Berkeley UNIX is preferred over System V). SICS Aurora and
  2156.    Echo is a parallel emulator for Sequent Balance, Sequent Symmetry,
  2157.    Encore Multimax, and BBN Butterfly (Unix). For more information, write
  2158.    to SICS, Swedish Institute of Computer Science, P.O. Box 1263, S-164
  2159.    28 KISTA, Sweden, call +46 8 752 15 02, fax +46 8 751 72 30, or send
  2160.    email to sicstus_request@sics.se. Bug reports and tech support questions
  2161.    should be sent to sicstus-bug@sics.se. To subscribe to the users group
  2162.    and implementors mailing list, send email to sicstus-users-request@sics.se. 
  2163.  
  2164.    SNI Prolog Version 3 is an implementation of the Prolog language that
  2165.    is compatible with the ISO Standard draft. It is available from
  2166.    Siemens Nixdorf for Unix workstations for about DM 11100 in Germany.
  2167.    SNI Prolog runs on the SGI, SNI and Sun platforms, and ports to other
  2168.    systems, including MS-DOS, are in progress. Includes coroutines,
  2169.    finite domains, numerical and boolean constraints, garbage collection,
  2170.    incremental compilation, dynamic linking, hypertext style on-line
  2171.    help, a window environment with an integrated editor, interfaces to
  2172.    INFORMIX, Motif/XWindows and C. The constraint programming features of
  2173.    SNI Prolog provide support for solving problems from operations
  2174.    research such as dynamic resource allocation and flexible scheduling
  2175.    with numerical constraints or the verification of complex systems with
  2176.    Boolean constraints. For more information, write to Siemens Nixdorf
  2177.    Informationssysteme AG, Otto-Hahn-Ring 6, D-8000 Munich 83, Germany,
  2178.    Attn: Hans-Juergen Stenger, Systems Planning, call +49 89 636 44049,
  2179.    fax +49 89 636 41208, or send email to stenger@sd235-hera.zfe.siemens.de.
  2180.  
  2181.    SPIES YAP is a high-level emulator with interpreter for Sun3, Sun4,
  2182.    VAXstation, SGI, HP9000, Apple Macintosh and Amiga (Atari ST). For
  2183.    more information, write to SPIES, Sociedade Portuguesa de, Importacao
  2184.    e Exportacao de Software, Lda Av da Republica, 46 - 2, 1000 Lisboa,
  2185.    Portugal, call +351 1 795075, or fax +351 1 775891.
  2186.  
  2187.    Turbo Prolog. See PDC Prolog.
  2188.  
  2189. Parallel Prologs:
  2190.  
  2191.    Densitron CS Prolog is a parallel prolog compiler and interpreter for
  2192.    IBM PCs (MS-DOS or OS/2), T414/T800 transputer (mono or multi), 386
  2193.    (Unix V), uVAX (VMS), or VAX(VMS). Also standard Prolog for MS-DOS,
  2194.    UNIX and VAX. For more information, write to Densitron, Unit 4,
  2195.    Aiport Trading Estate, Biggin Hill, Kent, TN16 3BW, UK, call +44 959
  2196.    76331, or fax +44 959 71017.
  2197.  
  2198.    Paralogic is a parallel implementation of the Clocksin and Mellish
  2199.    Prolog. It runs on DOS-based PCs or Apple Macintoshes with the INMOS
  2200.    Transputers. For more information, write to Paralogic Inc., 115
  2201.    Research Drive, Bethlehem, PA 18015, call 215-861-6960, fax
  2202.    215-861-8247 or email plogic@lehi3b15.csee.Lehigh.edu. It is also
  2203.    distributed by Computer Systems Architects, 905 N. University Avenue,
  2204.    Provo, UT 84604-3422, 800-753-4272 (801-374-2300), or fax 801-374-2306 
  2205.    as n-parallel Prolog.
  2206.  
  2207.    PARLOG is a parallel emulator from Imperial College for the Sequent
  2208.    Balance, Sequent Symmetry, Encore Multimax, Alliant FX (Unix), Sun
  2209.    (Unix, 1 processor). For more information, write to Imperial College,
  2210.    Department of Computing, Parlog Distribution Secretary, 180 Queen's
  2211.    Gate, London SW7 2BZ, UK, call +44 71 589 5111 x7537, fax +44 71 589
  2212.    8024, or send email to parlog@doc.ic.ac.uk. The single processor
  2213.    versions of PARLOG for the Sun-3 and Sun-4 are now available free of
  2214.    charge.  Please refer to the entry regarding IC-Prolog II in this
  2215.    Resource Guide. Parallel Logic Programming produces PC-PARLOG and
  2216.    MacPARLOG for the IBM PC and Macintosh computers.  For more
  2217.    information contact Parallel Logic Programming Ltd., PO Box 49,
  2218.    Twickenham, Middlesex TW2 5PH, UK or call +44 454 201 652.
  2219.  
  2220.    Strand-88 is a parallel emulator for Sun3, Sun4, Sparc BBN Butterfly,
  2221.    GPT2000, Cogent Multimax, Intel iPSC/2, iPSC/860, MIPS RiscStation,
  2222.    Sequent Symmetry Balance (Unix System V or Mach, Helios) and
  2223.    communication component from CSTools, Express in some cases. Also
  2224.    Transputer systems PC hosted systems from Paracom, Telmat and others,
  2225.    Unix hosted systems from Meiko, Paracom, Telmat and others, Apple
  2226.    Macintosh, Atari ATW, and NeXT. Price dependent on configuration and
  2227.    scale of target machine. For more information, write to Strand
  2228.    Software Technologies Ltd., Ver House, London Rd, Markyate, Herts AL3
  2229.    8JP, UK, call +44 582 842424, fax +44 582 840282, or send email to
  2230.    strand88@sstl.uucp.
  2231.  
  2232.    SICS Aurora and Echo. See SICStus Prolog above.
  2233.  
  2234. Object Oriented Systems:
  2235.  
  2236.    LAP is an object-oriented system by Elsa. For more information, write
  2237.    to Elsa Software, La Grange Dame Rose, 6 ave du Marechal Juin, 92366
  2238.    Meudon-La-Foret Cedex, France, call +33 (1) 46 30 24 55, fax +33 (1)
  2239.    46 30 55 26, or send email to elsa!lap@uunet.uu.net.
  2240.  
  2241.    SPIRAL is an object oriented system by CRIL for Sun3 and Sun4 under
  2242.    Unix. For more information, write to CRIL, Conception et Realisation,
  2243.    Industriel de Logiciel, 146 bd de Valmy 92707, Colombes Cedex, France,
  2244.    call +33 1 47 69 53 67, or fax +33 1 47 69 53 99.
  2245.  
  2246. Constraint Systems:
  2247.  
  2248.    CLP(R) is a constraint system from Monash University for VAX, Sun, and
  2249.    Pyramid (Unix). Costs $150. For more information, write to Monash
  2250.    University, CLP(R) Distribution, Department of Computer Science,
  2251.    Clayton, Victoria 3168, Australia, or send email to
  2252.    clp@moncsbruce.oz.au.
  2253.  
  2254.    Trilogy is a constraint system developed by Complete Logic Systems. It
  2255.    costs $100. For more information, write to Complete Logic Systems, Inc,
  2256.    741 Blueridge Avenue, V7R 2J5, North Vancouver BC, Canada, or call
  2257.    604-986-3234. [This phone number was recently disconnected -- does
  2258.    the company still exist?]
  2259.  
  2260.    VS Trilogy is a Prolog compiler available from Vertical Software for
  2261.    $395. For more information, write to Vertical Software Ltd., 14-636
  2262.    Clyde Ave, W. Vancouver, BC, V7T 1E1, Canada, call 604-925-0321, or fax
  2263.    604-688-8479.
  2264.  
  2265. ----------------------------------------------------------------
  2266.  
  2267. ;;; *EOF*
  2268. ---------------------------------------------------------------------------
  2269.  
  2270.